備忘録として書いておきます。 Win32API宣言時のDllImportに、"SetLastError=true" を付加する。 [DllImport("user32.dll", CharSet=CharSet.Auto, SetLastError=true)] プログラムコード上で実際に、GetLastError を実行したい部分では、GetLastError の代わりに、Marshal.GetLastWin32Error() を使用する。 エラーコード一覧は、下記サイトなんかがいいのではないでしょうか(回線速度によっては使えないかも)。 http://ir9.jp/prog/ayu/win32err.htm また、エラー発生時に例外を発生させる場合は、 throw new Win32Exception(Marshal.GetLastWin32Error()); 又は throw new