はじめに C#でWindowsのソフトウェアを開発しているとWindows APIを呼び出すためによく使うDllImport属性。意外と適当に書いても呼び出せたりするけど、なるべく丁寧に書いてあげたくなるのが開発者の心情というもの。と言うわけでDllImportするときの個人的なメモ。 定義はNativeMethodsクラスで 昨今のVisual Studioでは、DllImportの定義は「NativeMethods」「SafeNativeMethods」「UnsafeNativeMethods」という名称のクラス内に定義しないとコード分析でCA1060の警告が出てくる。 クラスの中に定義したクラスでも良いので、こんな感じにする。 public class Test { private static class NativeMethods { [DllImport("user32.dll