看流星社区

 找回密码
 注册账号
查看: 2099|回复: 0

C++调用DLL两种方法—静态调用和动态调用

[复制链接]

该用户从未签到

发表于 2020-3-22 21:47:15 | 显示全部楼层 |阅读模式

[C++]调用DLL有两种方法——静态调用和动态调用

(一).静态调用其步骤如下:
1.把你的youApp.DLL拷到你目标工程(需调用youApp.DLL的工程)的Debug目录下;
2.把你的youApp.lib拷到你目标工程(需调用youApp.DLL的工程)目录下;
3.把你的youApp.h(包含输出函数的定义)拷到你目标工程(需调用youApp.DLL的工程)目录下;
4.打开你的目标工程选中工程,选择Visual C++的Project主菜单的Settings菜单;
5.执行第4步后,VC将会弹出一个对话框,在对话框的多页显示控件中选择Link页。然后在Object/library modules输入框中输入:youApp.lib
6.选择你的目标工程Head Files加入:youApp.h文件;
7.最后在你目标工程(*.cpp,需要调用DLL中的函数)中包含你的:#include “youApp.h”
注:youApp是你DLL的工程名。

(二).动态调用其程序如下:
动态调用时只需做静态调用步骤.
  1. {
  2. HINSTANCE hDllInst = LoadLibrary(“youApp.DLL”);
  3. if(hDllInst)
  4. {
  5. typedef DWORD (WINAPI *MYFUNC)(DWORD,DWORD);
  6. MYFUNC youFuntionNameAlias = NULL;  // youFuntionNameAlias 函数别名
  7. youFuntionNameAlias = (MYFUNC)GetProcAddress(hDllInst,”youFuntionName”);

  8. // youFuntionName 在DLL中声明的函数名
  9. if(youFuntionNameAlias)
  10. {
  11. youFuntionNameAlias(param1,param2);
  12. }
  13. FreeLibrary(hDllInst);
  14. }
  15. }
复制代码

点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-4-25 15:29

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表