我定义要调用的函数,如
[DllImport("LFWAttend.dll")]
public static extern int FK_GetPhotoDataWithString(int nHandleIndex, int vEnrollNumber,
[MarshalAs(UnmanagedType.BStr)]ref string fstrEnrollData);
使用 this manual.(不要担心它是中文的。我只需要定义部分)
然后我调用这个函数
string test="";
Module.FK_GetPhotoDataWithString(connectId, id, ref test);
在手册中,它表示该函数将在" test"中发回字符串。但是当代码运行到函数调用路径时,调试器就存在了。 我在Visual Studio中构建它并没有得到任何东西。没有错误和例外。 我也非常混淆Marchaling概念。请帮忙。