如何使用 P/Invoke 复制文件/目录权限?
我花了几个小时寻找解决方案,但文档很少,我无法找到我需要的内容。 如果我有一个文件或目录,我如何在 C# 中使用 P/Invoke 将权限(即所有者和 SID …
将 ByRef 可变长度数组从 COM 编组到 C#
我无法正确获取此 COM 接口的托管签名,有什么建议吗? MIDL_INTERFACE("6788FAF9-214E-4b85-BA59-266953616E09") IVdsVolumeMF3 : public IUnknown {…
.NET 枚举继承替代方案
我想为 ACCESS_MASK 我必须与P/Invoke一起使用,但我不知道这种实现的最佳方法是什么。 1.如果可能的话: [Flags] enum ACCESS_MASK : uint { STANDAR…
用于键盘布局和编译器警告的 C# P/Invoke
我不习惯 P/Invoke,但我应该声明几个 WinAPI 函数来获取或设置键盘布局。我声明了如下函数: [DllImport("user32.dll")] private static extern long…
如何在C#中检查DLL入口点是否存在而不调用函数
我正在使用 OpenTK OpenGL 包装器。由于它加载 OpenGL dll(或 Linux 上的 .so),因此它包含许多 DLL 导入函数。 问题是,某些驱动程序不会导出所有…
ASP.NET Web 服务使用 P/Invoke 调用非托管代码。多个webservice请求之间会不会出现内存问题?
有一个 ASP.NET Web 服务,每次调用 Web 服务时都会执行 LoadLibrary() 调用来加载非托管 .dll,然后 P/Invokes 非托管 .dll 中的许多函数。 ASP.NET …
通过 P/Invoke 将 MFC CArray 编组到 C#
我正在尝试编写一个 C# 类 (2010),它允许使用旧版 C++ dll 中包含的函数。这些函数使用 __stdcall 导出,并具有不同的参数集。我在处理字符串和其他…
如何在使用数组的 C# 互操作调用中通过引用访问基于 C 的指针?
我对 P/Invoke 相当陌生(并且对 C 非常生疏),并且我花了相当多的时间尝试解决以下问题: 我想从托管 C# 调用非托管 C 函数。 C 函数应该创建一个包…
在 WriteFile kernel32.dll 上检测到 PInvokeStackImbalance
从框架 2 迁移到框架 4 后,运行 WriteFile 函数时出现错误。 [DllImport("kernel32.dll")] public static extern bool WriteFile(SafeHandle hFile, …
System.AccessViolation 异常和堆块在 PInvoke 期间修改了过去请求的大小
当尝试从托管代码 PInvoke 本机调用时,我遇到 System.AccessViolation Exception 和堆块修改了过去请求的大小。本机代码是 COBOL win32 dll。该问题…
如何使用 CreatePen 绘制空心矩形?
由于在绘制小圆角矩形时使用 GDI+ 中的 DrawArc 函数不太准确,因此我使用 RoundRect 代替。 Protected Overrides Sub OnPaint(ByVal e As PaintEvent…
将托管回调传递给 DllImport (ed) 函数
我有一段代码抛出异常,涉及非托管函数调用的垃圾收集委托。这是代码: // Setup Callback functions errorCode = gsapi_set_stdio(ghostScriptPtr, n…
调用非托管 C++ C# 中的库 (dll) 创建访问冲突错误 (0xc0000005)
抱歉问了这么长的问题。我只是想包括我目前所知道的有关该问题的所有信息。 我正在使用 Visual Studio 2008 用 C# 创建一个 Windows 窗体程序,该程序…
我可以导出 C++与 C# dll 的 C 风格方法的接口
我试图避免 COM。我正在 C++ exe 上设计混合 C# 和 C++ 控件。 我想到的一种方法是从 C# 调用我的 C++ exe,并将 Windows 消息发送到 C# 窗口。然而,…
无法加载 C++ Windows 7 32 位操作系统中 C# 应用程序中的 DLL
我有一个用 C++ 编写的 DLL,需要由 C# 中的应用程序使用。 设置: 操作系统:Win7 32位操作系统 C++ DLL:64 位 C# application: 64 我将 C++ 项目的…