C++函数定义
DWORD CalcGuid(DWORD dwGuid, void* pGuid);请教一下在C#中如何调用该方法,方法应该如何声明
DWORD CalcGuid(DWORD dwGuid, void* pGuid);请教一下在C#中如何调用该方法,方法应该如何声明
解决方案 »
- (向c#版问一个问题)从m个数字中选取n个数作为一组。不计较顺序。 有多少种组合,分别是什么
- C#写的服务程序在XP下正常,到2003 server不正常
- ShockwaveFlashObject点击全屏问题
- 毕业设计要用C#开发个东西,没学过C#,高手进来给点建议吧
- 运算问题(高分)
- 在一个类里的很多地方要格式化一个DateTime,应该用个什么变量来统一控制,这样就不用每次都单独格式化,弄不好还可能不一致?
- 对于数据库UPDATE老是失败,求帮助
- c#入门经典一书第26~28章随书源码在哪里能够找到?wrox网站上提供下载的只是1~24章。
- 怎么那么多人说水晶报表?它是做什么的啊?
- 关于管理系统权限的问题
- 怎么写删除xml节点
- 怎么把dataset中多个表的数据插入到数据库
int CalcGuid(int dwGuid, IntPtr pGuid);
IntPtr pGuid 这个初始化怎么初始化?以下这样是对的吗?我这样做了之后得到一个SHEXPECTION 外部程序发生错误[DllImport("cplus.dll")]
public static extern uint CalcGuid(uint dwGuid, IntPtr pGuid);IntPtr mm = new IntPtr(0);
uint calResult = CalcGuid(dwGuid, mm);
DWORD CalcGuid(DWORD dwGuid, void* pGuid);c++的代码现在没有,晚上我问问看pGuid指向的应该是一个string字符串如果是string字符串的话
我C#要怎么初始化这个指针呢?
[DllImport("cplus.dll")]
public static extern uint CalcGuid(uint dwGuid, IntPtr pGuid);
或者使用byte数组来接收,在调用函数时,开一个相应大小的byte数组即可
[DllImport("cplus.dll")]
public static extern uint CalcGuid(uint dwGuid, byte[] pGuid);
可以参见该文 "C#调用C++DLL传递结构体数组的终极解决方案"http://blog.csdn.net/xxdddail/article/details/11781003
[DllImport("test.dll", CharSet=CharSet.Ansi)]
public static extern uint CalcGuid(uint dwGuid, ref string pGuid);最后用这个ref string 调用成功了,谢谢大家!