读书人

怎么将LPVOID转换为C#数据类型

发布时间: 2012-02-20 21:18:23 作者: rapoo

如何将LPVOID转换为C#数据类型?
我想调用一个API,它有一个参数是[out]型 LPVOID lpbuf。
使用C#如何得到lpbuf的内容呢?
最好有代码。

[解决办法]
byte[] vBuffer = new byte[dwSize];
IntPtr vAddress = Marshal.ReadIntPtr(lpstr); //怀疑lpstr是指针的指针,这样测试一下
Marshal.Copy(vAddress, vBuffer, 0, dwSize);

还原字符串的时候还需要根据具体编码,如:
Text = Encoding.Default.GetString(vBuffer);

读书人网 >C#

热点推荐