Windows下动态库的隐式调用

多年的工作经验告诉我Windows下使用动态库最简单的方法:使用def导出函数,然后隐式调用。

具体做法如下:

(1)首先使用visual studio 创建“Win32项目”,如下图:

(2)然后在下面页面选择“DLL”并去掉“预编译头”,点击“完成”即可创建动态库,如下图:

(3)为了方便导出符号,我们采用def文件,相比使用__declspec(dllexport)来的更方便,def文件添加如下图,请保持文件命名和动态库命名一致

(4)编辑def文件,具体的def文件的语法规则参见微软的msdn说明 ,示例如下图:

(5)为了确认def能真的起效,请查看工程设置以及在visual studio命令行使用“dumpbin -EXPORTS XXX.dll”查看dll的导出接口,工程设置如下:

(6)使用的时候只要在链接器的输入的附加依赖项里面加入动态库的lib文件,然后在代码中引入头文件,具体lib的引入设置如下:

(7)程序打包的时候记得打包dll,也只需要打包dll。

以上只是个人经验,欢迎提出更好的建议。

参考文献:1、http://www.cnblogs.com/skynet/p/3372855.html

原文地址:https://www.cnblogs.com/superbi/p/5505790.html