C#_Win32_PInvoke源码生成器

介绍

一个源代码生成器,用于向 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 上的说明吧)

使用方法

  1. 安装 nuget 包
    dotnet add package Microsoft.Windows.CsWin32 --prerelease

  2. 项目根目录添加 NativeMethods.txt 每一行写一个接口保存即可

  3. 调用 (MessageBox 演示)

    C# 复制代码
    using Windows.Win32;
    using Windows.Win32.Foundation;
    using Windows.Win32.UI.WindowsAndMessaging;
    
    PInvoke.MessageBox(HWND.Null, "你好", "标题", MESSAGEBOX_STYLE.MB_OK);
相关推荐
一名用户3 小时前
unity实现梦日记式传送组件
后端·c#·unity3d
阿蒙Amon4 小时前
C#扩展方法全解析:给现有类型插上翅膀的魔法
开发语言·c#
江山如画,佳人北望18 小时前
C#程序入门
开发语言·windows·c#
与火星的孩子对话19 小时前
Unity进阶课程【六】Android、ios、Pad 终端设备打包局域网IP调试、USB调试、性能检测、控制台打印日志等、C#
android·unity·ios·c#·ip
future141219 小时前
C#每日学习日记
java·学习·c#
军训猫猫头1 天前
1.如何对多个控件进行高效的绑定 C#例子 WPF例子
开发语言·算法·c#·.net
葬歌倾城2 天前
JSON的缩进格式方式和紧凑格式方式
c#·json
Eiceblue2 天前
使用 C# 发送电子邮件(支持普通文本、HTML 和附件)
开发语言·c#·html·visual studio
小小小小王王王2 天前
hello判断
开发语言·c#
金增辉2 天前
基于C#的OPCServer应用开发,引用WtOPCSvr.dll
c#