读书人

C#中怎么调用C++的函数?

发布时间: 2012-09-23 10:28:11 作者: rapoo

C#中如何调用C++的函数?高手请进!~
需要的用到的C++函数:
int main()
{}

我的C#引用函数
class GetModelData
{
[DllImport("MyCLP.dll", CallingConvention = CallingConvention.StdCall)]
public static extern int main();

public static void Run()
{
main();
}
}

现在它提示我说MyCLP.dll中找不到main这个接口,各位高手怎么办啊!C++里面只有MyCLP.dll这一个dll啊!!!

[解决办法]
看看MyCLP.dll中函数是不是main,是不是通过def文件规定了输出名字,默认不会按照你写的名字输出的,会加一堆字母的
[解决办法]
楼上说的有可能,C++编译DLL会改名,也可以通过Def文件改变输出名称

你可以使用VS自带的工具看看名字:dumpbin /exports DLL名字
[解决办法]
确保导出函数名称确实为main,同时调用规范为__stdcall

读书人网 >C#

热点推荐