備忘録

備忘録

C#でWin32APIを呼び出す方法(CsWin32利用)

Ⅰ. はじめに

タイトルの通り「C#でWin32APIを呼び出す方法」です。

この記事ではMicrosoftが作成しているCsWin32を利用する方法を紹介します。

Ⅱ. 必須環境

Ⅲ. やり方

1. 必要なパッケージをインストールする
Install-Package Microsoft.Windows.CsWin32
2. NativeMethods.txt を新規作成する

f:id:kagasu:20210209000207p:plain

NativeMethods.txt

MessageBox
MB_OK
3. サンプルプログラムを書く
using System.Diagnostics;
using Microsoft.Windows.Sdk;

namespace Test
{
  class Program
  {
    static void Main(string[] args)
    {
      var windowHandle = Process.GetCurrentProcess().MainWindowHandle;
      PInvoke.MessageBox((HWND)windowHandle, "Hello World!", "Title", Constants.MB_OK);
    }
  }
}

実行結果

f:id:kagasu:20210209000621p:plain