如何将LPVOID转换为C#数据类型? 我想调用一个API,它有一个参数是[out]型 LPVOID lpbuf。使用C#如何得到lpbuf的内容呢?最好有代码。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 byte[] vBuffer = new byte[1024];IntPtr vAddress = /* TODO */; //lpbufMarshal.Copy(vAddress, vBuffer, 0, 1024); 把这个API说出来多好嘛不同的有不同的定义 同zswang(伴水清清)(专家门诊清洁工).是在不行你用unsafe代码也行. byte[] vBuffer = new byte[dwSize]; IntPtr vAddress = lpstr; Marshal.Copy(vAddress, vBuffer, 0, dwSize); 使用上面的代码后,vBuffer是空的。 LPVOID lpbuf返回一个字符串。 byte[] vBuffer = new byte[dwSize];IntPtr vAddress = Marshal.ReadIntPtr(lpstr); //怀疑lpstr是指针的指针,这样测试一下Marshal.Copy(vAddress, vBuffer, 0, dwSize);还原字符串的时候还需要根据具体编码,如:Text = Encoding.Default.GetString(vBuffer); 谢谢zswang(伴水清清)(专家门诊清洁工),成功了。 一个Windows Service如果宿主多个WCF服务? 请问什么叫运算符重载,为什么要重载呢? 请问,我如何实现这样的上下文右键菜单? treeview的问题 如何删除datagrid中选中的一行数据 请教:如何生成乱码文件。用文本编辑器打开都是非法字符。只有通过程序读取文件内容! 在winform中页面之间有哪几种传值的方式!! thread 简单问题,紧急~~~~~~~在线等!!! 代码添加的控件在postback后消失了。。。。我想把代码添加的控件在页面上永久显示。请教高手。。。 Richtextbox和Hyperlink的光标控制问题? POST方法调用webservice
IntPtr vAddress = /* TODO */; //lpbuf
Marshal.Copy(vAddress, vBuffer, 0, 1024);
不同的有不同的定义
是在不行你用unsafe代码也行.
IntPtr vAddress = lpstr;
Marshal.Copy(vAddress, vBuffer, 0, dwSize);
使用上面的代码后,vBuffer是空的。
IntPtr vAddress = Marshal.ReadIntPtr(lpstr); //怀疑lpstr是指针的指针,这样测试一下
Marshal.Copy(vAddress, vBuffer, 0, dwSize);还原字符串的时候还需要根据具体编码,如:
Text = Encoding.Default.GetString(vBuffer);