首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

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

2012-02-20 
如何将LPVOID转换为C#数据类型?我想调用一个API,它有一个参数是[out]型LPVOIDlpbuf。使用C#如何得到lpbuf的

如何将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);

热点排行