5

我有一个.dll用 C++ 编写的动态库 () 导出我想在我的 C# 应用程序中使用的函数:

int SendText(void* pControl, char* sText);

鉴于它需要一个指向 void 的指针,我该怎么做?

4

1 回答 1

13

因为void*您可以使用IntPtr
字符串将与MarshalAs属性一起使用:

[DllImport("MyDll.dll", CharSet = CharSet.Ansi)]
public static extern int SendText(IntPtr pControl, [MarshalAs(UnmanagedType.LPStr)] string sText);
于 2012-05-17T05:51:12.293 回答