定义导出函数
//方法1:
_declspec(dllexport) int Add(int a, int b);//此时会发生函数名字改编
//如果不想改编,可以使用extern "C"
extern "C" _declspec(dllexport) int Add(int a, int b);
//方法2:
//使用模块定义文件def,“;”为注释行
; Win32Dll.def: 导出DLL函数
LIBRARY "Win32Dll" ;Dll的名称
;DESRIPTION "实现一个Win32 DLL" ;Dll的描述
EXPORTS
Add ;函数名
Sub ;函数名
DLL的调用
1、动态调用(显式调用)
相关函数:LoadLibrary、FreeLibrary、GetProcAddress
2、静态调用(隐式调用)
(1)需要在调用程序中加入#pragma comment(lib, "name.dll");或者在“工程”->“设置”->“Link”项,输入name.dll
(2)在调用程序中声明导入函数:extern "C" _declspec(dllimport) int Add(int a, int b);
windows系统搜索DLL的路径顺序:
1、exe文件的目录
2、进程的当前工作目录
3、Windows系统目录System32
4、Windows目录
5、path环境变量