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();
相关推荐
feiyangqingyun21 分钟前
Qt和ffmpeg结合打造gb28181推流/支持udp和tcp被动以及tcp主动三种方式
qt·udp·ffmpeg
歪歪1001 小时前
如何在Qt中使用VS的调试功能
运维·开发语言·网络·qt·网络协议·visual studio
友友马8 小时前
『 QT 』QT控件属性全解析 (一)
开发语言·前端·qt
QT 小鲜肉15 小时前
【个人成长笔记】Qt 中 SkipEmptyParts 编译错误解决方案及版本兼容性指南
数据库·c++·笔记·qt·学习·学习方法
OneSea15 小时前
Debian编译Qt5
linux·qt
看到我,请让我去学习15 小时前
Qt 控件 QSS 样式大全(通用属性篇)
开发语言·c++·qt
曦樂~20 小时前
【Qt】信号与槽(Signal and Slot)- 简易计算器
开发语言·数据库·qt
十五年专注C++开发21 小时前
QDarkStyleSheet: 一个Qt应用的暗色主题解决方案
开发语言·c++·qt·qss
Algebraaaaa2 天前
什么是前端、后端与全栈开发,Qt属于什么?
开发语言·前端·qt
大美B端工场-B端系统美颜师2 天前
工控软件开发选择难?Electron、Qt、WPF 对比
qt·electron·wpf