总结一下VC使用DLL文件:
1.这里主要讲得非MFC的动态库
动态库的调用方式,静态调用和动态调用两种方式。
静态调用,即将编译dll文件时生成的lib文件和自己定义的头文件,一同加入vc的工程,lib文件相当于一张函数的地图,在编译的过程中会随着其他文件一起连接生成 可执行文件。加入lib文件的方式可以是#pragma comment(lib, "lib文件的位置") 也可以直接在 project——setting——Link——lib库添加你的lib库文件名。
动态调用,即使用LoadLibrary 和FreeLibrary的方法,具体定位到dll文档的某个函数接口用GetProcAddress(参数一,参数二),参数二你可以根据函数在dll中的位序 或者函数的名称。使用vc 里的Depends工具,可以很方面得看到,dll里有哪些函数。还需要注意的是,你需要宏定义对应的函数指针,用来获取dll里面函数的地址。
在编写动态库函数时,一般有两种声明:__stdcall 和__cdecl .
C/C++缺省的调用方式为__cdecl,所以在声明相关函数的时候特别要注意。