c# 调用 vc++ dll 的问题总结

1. __declspec(dllexport) 标记在vs2005中编译时会修改函数签名,所以如果c#中还用相同的函数名去调用会出问题,提示“未能在XXx类中找到XXX入口方法”
解决的办法是使用def文件,它会告诉编译器不要修改签名(我操)
2.在def中的函数名必须在项目中唯一,如果有连个同名函数,即使一个为全局一个在类中,def也不知道该找哪个,即使类中的函数声明为private也没用(草)

3.如果在c++的程序中调用了其他的dll,则必须将c++项目生成的 dll 和所有相关的dll全部放到生成目录(也是c#项目属性中 生成-》输出路径指向的目录)

转载于:https://www.cnblogs.com/vs-bug/archive/2010/08/03/1791313.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值