首页 新闻 会员 周边 捐助

C#调C++写的DLL函数,出现“方法的类型签名与PInvoke不兼容错误”

0
悬赏园豆:100 [已解决问题] 解决于 2017-10-07 13:02
 
调用时,提示【方法的类型签名与PInvoke不兼容错误】
Lin_pin的主页 Lin_pin | 初学一级 | 园豆:74
提问于:2017-09-25 10:29
< >
分享
最佳答案
1

c++有6个参数,你只有5个

收获园豆:100
hahanonym | 小虾三级 |园豆:1460 | 2017-09-25 13:57
其他回答(3)
0

函数第一个参数in_hMonClient没有,顺序和类型一定需要对应上,否则p/invoke会有问题

2012 | 园豆:21645 (高人七级) | 2017-09-26 08:15
0

我补充一点。从unmanaged code返回内容,你这里c接口返回了一个指针,内存应该是在非托管代码中分配的,传输到managed code必须Marshal。

rigid | 园豆:202 (菜鸟二级) | 2017-09-26 13:38
0

方法的类型签名与PInvoke不兼容错误,就是这个“c++有6个参数,你只有5个”问题的描述吧

数据酷软件 | 园豆:130 (初学一级) | 2017-09-28 13:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册