当前位置: 首页 > 编程技术 > 正文

解决Dll导出表函数名称混乱

DLL编写完成后,经常发现dll的导出表的函数不是命名的函数样子而是多了很多奇怪的字符,例如

假设我的函数的名称是plus,但是在dll导出表中名字是?plus@@YAHHH@Z,而不是像windows自带的dll那样的名称工整,这个是因为编译器的原因,只需要在声明函数为dll导出表函数是加上:extern “C”就可以解决了

例如

原声明:

_declspec (export) int plus (int a,int b)

{return a+b;

}

添加后:

extern “C”_declspec (export) int plus (int a,int b)

{return a+b;

}

加上了后编译通过,重新用lord PE查看导出表就会发现函数名称工整了



本文固定链接: http://kuaile.in/archives/340 | 蒲公英的博客

该日志由 蒲公英 于2012年02月02日发表在 编程技术 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 解决Dll导出表函数名称混乱 | 蒲公英的博客
关键字:

解决Dll导出表函数名称混乱:等您坐沙发呢!

发表评论


You must enable javascript to see captcha here!

快捷键:Ctrl+Enter