C#でwindows 32API呼び出し

C#でのwindows 32APIの呼び出し方をメモっとく。

よく使うメッセージボックスの場合。(.NET Frameworkのクラス・ライブラリの使えば簡単にSystem.Windows.Forms名前空間のMessagebox.showで表示できるがあえてAPIでやってみる。)
結論から書けばこう。

動作環境 visual studio C# 2010

System.Runtime.InteropServices名前空間のDllImport属性を使えば外部APIを使える。
IntPtr というのはcでいうHANDLEのこと。
引数で渡す定数の宣言では、プラットフォームSDKに含まれるヘッダ・ファイルで定義されているが、C#ではこれらのヘッダ・ファイルを扱うことができないため、必要に応じて定数を自分で定義しなければならないため。
Messageboxの定数はWinuser.hで定義されている。
呼び出しでは、通常通り指定。詳細はmsdnヘルプ参照。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク