介紹
一個原始碼生成器,用於向 C#專案新增一組使用者定義的 Win32 P/Invoke 方法和相關的型別。
連結地址: https://github.com/microsoft/CsWin32
還在手動新增平臺呼叫的程式碼或者增加無用的程式集?微軟的官方解決方案來了!
特色
- 快速將
P/Invoke
方法和相關型別新增到您的 C#專案。 - 沒有笨重的程式集,按需使用
- 自動生成安全的型別
SafeHandle
- 基於微軟的官方連結生成 xml 文件和介面註釋
先決條件
The .NET 5 SDK or Visual Studio 2019 Update 8 (16.8) (具體看自己 Github 上的說明吧)
使用方法
-
安裝 nuget 包
dotnet add package Microsoft.Windows.CsWin32 --prerelease
-
專案根目錄新增
NativeMethods.txt
每一行寫一個介面儲存即可
-
呼叫 (
MessageBox
演示)using Windows.Win32; using Windows.Win32.Foundation; using Windows.Win32.UI.WindowsAndMessaging; PInvoke.MessageBox(HWND.Null, "你好", "標題", MESSAGEBOX_STYLE.MB_OK);