使用 p/invoke 从托管 Dll 接收 C# 上的 Windows 消息
我必须使用 p/invoke 从 C# 调用一些本机 C 函数。到目前为止,我在将不同的方法和结构编组到 C# 时没有遇到任何问题。我的问题在于,我必须调用的许…
PInvoke 编组结构和 BYTE* 作为参数导致错误指针
我花了1天的时间来查找为什么会出现这个问题,但结果还是失败。 当我在 Native DLL 中调试时,它显示第二个参数的错误指针。需要这里的专家建议我的步…
我应该如何为这段代码指定P/invoke接口?
在 C++ 中,我有一些代码需要传入 const char * : void Load(const char *filename) 如果我尝试使用 String 正如 MSDN 似乎建议的那样: [DllImport(…
从跨平台 DLL 返回整数数组
我用 C++ 创建了一个跨平台 DLL,可以在 Windows 和 Mac OSX 上编译。在 Windows 上,我有一个使用 P/Invoke 调用 DLL 的 C# 应用程序,在 Mac OSX 上…
如何转换原生 C++内存到C#结构?
我在 C++ 中有以下本机函数接口: int func1(void* param, int sizeOfParam). 在文档中提供了以下调用示例: typedef struct { int x; int y; int wid…
c++ 中的字符串?
我的问题是,我在 DLL 中有一些函数,其中一些函数例如: #include using namespace std; extern "C" __declspec(dllexport) string __cdecl encrypti…
DLLImport get 尝试读取或写入受保护的内存
我要疯了。 我有一个dll,具有以下功能: function MyFunc(myId: integer; var LstCB: array of char): integer; stdcall; 第一个参数是一个可怜的整…
使用 CString 进行 PInvoke
我正在尝试使用 P/Invoke 从 C# 调用非托管 C++ DLL 中的函数。 C++ DLL 使用 CString 作为函数参数并返回,例如 CString AFX_EXT_API GetUserName(CS…
对 PInvoke 函数“Test!DllCall::initDll”的调用堆栈不平衡
这是一个不寻常的问题。 我发现只有在通过 Visual Studio 运行程序时才会引发该错误。如果我编译该应用程序并运行编译后的程序,它就可以正常工作。有…
使用 P-Invoke 将字符串数组从托管 C# 传递到非托管函数
是否可以使用 P-Invoke 将字符串数组从托管 C# 传递到非托管函数? 这工作正常: [DllImport("LibraryName.dll")] private static extern void Functi…
在 C# 中调用 UnmanagedFunctionPointer 以实现自定义调用约定
我在 DLL 中有一个函数: char __usercall MyUserCallFunction(int arg1) 因为我讨厌自己,所以我想使用 P/Invoke 从 C# 中调用它。 通常,这可以通过…
通过 pinvoke 绑定到导出的值
我有一个 dll,它不仅导出函数,还导出值。我感兴趣的dll来自R项目(http://www.r-project.org/),它位于包含r语言运行时的R.dll中。头文件中的声明…
使用 PInvoke 从 C# 获取工具提示文本
我在 C# 中使用 PInvoke,尝试使用已知处理程序读取窗口中可见的工具提示,但我尝试以这种方式检查的窗口应用程序会因内存访问冲突错误而崩溃,或者根…
这个 CGPDFDictionaryGetString 如何转换为 Monotouch?
我有一段来自 GIT 上很棒的 VFR PDF 查看器的 ObjC 代码。 它使用CGPDFDictionaryGetString从PDF注释中获取指向字符串的指针。然后它使用一些字节指针…