如何在MFC中使用动态链接库

本文介绍了两种动态链接库(DLL)的加载方式:隐式链接和动态加载。隐式链接通过包含头文件及在项目中声明链接库来实现;动态加载则利用LoadLibrary和GetProcAddress函数按需加载DLL和调用其内部函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.隐式链接加载动态链接库

如果有XXX.h ,XXX.lib,XXX.dll,这样就可以隐式链接加载了。

在所要引用的.cpp文件中加入

#include     “XXX.h”   //包含静态链接库的头文件

#pragma  comment(lib,"XXX")   //隐式调用库文件

这样就可以使用dll中封装的函数了。

其中语句“#pragma comment(lib,"XXX")”可以用工程设置对话框的设置来代替。

 

2.动态加载动态链接库

如果只有XXX.dll,只能动态加载,主要通过LoadLibrary和GetProcAddress两个函数来实现。

举个小例子:

int ires;

typedef int (_cdecl *MyFunc)(int,int);

HMODULE hModule = ::LoadLibrary("MyDynamicLib.dll");    //加载动态链接库  此提供函数GetMaxCommDiv(int,int)计算最大公约数

MyFinc GetValue = (MyFunc)GetProcAddress(hModule,"GetMaxCommDiv");

ires=GetValue(m,n);

FressLibrary(hModule);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值