QT 调用动态链接库

引入QT提供的动态加载库的类

C 复制代码
#include <QLibrary>

定义函数指针类型

c 复制代码
typedef void (*GetResFunction)(uint8_t*, uint8_t*, int);

定义函数指针的主要目的是为了解析和调用动态链接库中的函数。如果你不定义函数指针,就无法直接调用动态链接库中的函数

加载动态链接库

c 复制代码
QLibrary myLib("Aes8a");
if(!myLib.load()){
    qDebug()<< "不能加载动态链接库";
}

解析函数

c 复制代码
GetResFunction getRes = (GetResFunction)myLib.resolve("GetRes");
if (!getRes) {
   qDebug() << "无法解析函数:" << myLib.errorString();
   myLib.unload();
}

QLibrary::resolve() 方法的作用是解析动态链接库(DLL 或 SO 文件)中导出的函数地址。它是使用动态链接库的核心工具之一,允许你在运行时动态获取函数指针并调用动态链接库中的函数。

调用函数

c 复制代码
 getRes(参数1, 参数2, 参数3);  // 调用函数

卸载动态链接库

c 复制代码
 myLib.unload();
相关推荐
sycmancia1 小时前
Qt——Qt中的事件处理(一)
开发语言·qt
代钦塔拉2 小时前
第二篇:VS2019 + Qt5.9.9 中文乱码实战:源码GB2312不乱码、文件写入与跨平台方案
开发语言·qt
sycmancia4 小时前
Qt中的事件处理(二)
开发语言·qt
hanbr5 小时前
Qt 进阶开发:主窗口、对话框、布局与常用控件全解析
qt
小短腿的代码世界6 小时前
Qt时间日期处理与QTimer高级应用:从毫秒级精度到跨平台定时器的完整架构解析
开发语言·qt·架构
小短腿的代码世界7 小时前
QGC飞控参数系统架构深度解析:从XML到飞控寄存器的参数同步引擎
qt·microsoft·ui
小短腿的代码世界7 小时前
QGC固件升级与引导加载架构深度解析:从Bootloader握手到固件校验的完整流程
qt·性能优化·架构
buhuizhiyuci7 小时前
【QT-百日筑基篇】打完完怪,开始学炼丹, 前往藏书阁寻找对应材料的信息,并前往去寻找对应材料-QT信号和槽
开发语言·qt
小短腿的代码世界7 小时前
QtitanRibbon深度解析:从微软Office UI到Qt跨平台Ribbon框架的完整架构实现
qt·microsoft·ui
郝学胜-神的一滴7 小时前
CMake 010 :一步到位链接静态库
开发语言·c++·qt·程序人生·系统架构·cmake