关闭

Win32 DLL相关操作

559人阅读 评论(0) 收藏 举报

定义导出函数

 

//方法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环境变量

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:316266次
    • 积分:1793
    • 等级:
    • 排名:千里之外
    • 原创:57篇
    • 转载:19篇
    • 译文:0篇
    • 评论:29条
    最新评论