C++和 C# 互操作性:P/Invoke 与 C++/CLI
在寻找 C# 和 C++ 之间互操作的方法的过程中,我发现了这篇文章 解释了 P/Invoke。 我读了很多文章,声称 C++/CLI 并不完全是 C++,需要对原始 C++ 代…
P/Invoke 代码适用于 WinXP,但 Win2k8 上例外
我正在尝试使用 C# 和 C++ 访问 DLL 中的函数。 C++ 运行良好,WinXP 上的 C# 也运行良好。但是,当我尝试在 Win2k8 系统上访问该函数时,出现以下错…
如何在c#中使用C dll头文件库
我对 C# 非常陌生,我正在尝试为我的项目使用帮助包。 该包是用 c 编写的,并且有 1) /bin/ 几个.dll文件 2)/include/有头文件 3) /lib/msvc/.lib 文…
pInvoke 和 COM Interop 之间有什么区别?
假设我正在访问第三方库,文档指出我可以使用 pInvoke 或创建互操作库并使用 COM。这两种技术之间有什么区别,为什么我会选择其中一种而不是另一种?…
C# 和 SendMessage(键)不起作用
我尝试向应用程序发送密钥。为了方便测试,我只使用记事本。这就是代码的样子: [DllImport("USER32.DLL", EntryPoint = "SendMessageW", SetLastErro…
在 VB.NET 中使用 DLL 导入/声明以及 .NET 未使用的参数类型
我正在开发一个项目,必须将 DLL 文件导入到几年前创建的 VB 项目中。 DLL是用C++创建的,看起来像: void CoordinateConversionService::convert( So…
当继承SafeHandle时,我们是否应该重新应用ReliabilityContract属性?
在 关于SafeHandles的.Net安全博客文章,其中提到需要将ReliabilityContract属性应用到关闭句柄的本机方法的签名上。 当我们继承 SafeHandle 时,我们…
确定用户是否属于本地管理员组
我的问题 我正在使用 PInvoked Windows API 函数来验证用户是否属于本地管理员组。我正在利用 GetCurrentProcess、OpenProcessToken、GetTokenInforma…
如何向 POWER_STATE_PASSWORD 提供密码?
我正在尝试获取我的 Windows 移动设备的电源状态。 这些状态定义为: #define POWER_STATE(f) ((f) & 0xFFFF0000) // power state mask #define POWER…
C# & C++,调用 C++ 时出现运行时错误来自 C# 的 dll
我写了一个C++包装DLL供C#调用。该 DLL 经过测试,在我的 C++ 测试程序中运行良好。 现在与 C# 集成,我遇到运行时错误并崩溃了。无法使用调试器查看…
pinvoke 去杂波功能
我正在尝试调用一个杂乱函数。 该函数在文档中定义为 ClutterActor * clutter_texture_new_from_file (const gchar *filename, GError **error); 我的…
在 C# 中加载 Win32 控件(特别是 WPF)
我编写了一组封装 Delphi 框架的 Win32 dll(请参见下面的代码片段 1),并且可以通过加载 dll 并分配正确的变量(代码片段 2)将它们加载到另一个 De…
什么是“正确的”?获取 Win32 p/Invoke 声明的方法?
我通常使用网站 http://www.pinvoke.net/ 来获取 DllImport 声明,并且我注意到这是 Stack Overflow 上对 API 互操作问题的事实上的标准响应。 这是“…
从 CreateRemoteThread 运行 DllImport 命令
我有一个名为 Msg 的函数,它是从名为 tier0.dll 的 dll 导入的。我可以 DllImport 这很好,但该命令仅在 dll 附加到另一个可以完成 Msg 命令的进程时…