VC 编译的DLL文件中怎样隐藏函数名?

 我来答
Frank7258
2011-04-04 · TA获得超过1503个赞
知道小有建树答主
回答量:381
采纳率:0%
帮助的人:561万
展开全部
不要使用__declspec(dllexport)
加入你要到处funA, funB, funC在工程中新建一个def文件,有些时候Visual Studio自动会建立def文件,这个文件里面这么些

LIBRARY 你的dll名字
EXPORTS
funA@1
funB@2
funC@3

这样你就导出了这三个函数,函数只需要声明称extern "C"就行了,千万不要__declspec。
如果不想导出名字,在后面加NONAME

LIBRARY 你的dll名字
EXPORTS
funA@1 NONAME
funB@2 NONAME
funC@3 NONAME

不过你不要认为没有名字别人就无法调用,用Windows API函数GetProcAddress是可以通过序号(Ordinal,就是在@之后的数字)获得函数指针的,不一定要名字的。
更多追问追答
追问
我是个菜鸟,详细求教!
E_MAIL:navy102019@163.com
追答
你用什么版本的编译器?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式