我有一个用C ++编写的动态库(.dll
),导出我想在C#应用程序中使用的函数:
int SendText(void* pControl, char* sText);
我怎么能,因为它需要一个指向void的指针?
答案 0 :(得分:12)
void*
你可以使用IntPtr
,
字符串将与MarshalAs
属性一起使用:
[DllImport("MyDll.dll", CharSet = CharSet.Ansi)]
public static extern int SendText(IntPtr pControl, [MarshalAs(UnmanagedType.LPStr)] string sText);