详解 Qt 下 QLibrary 动态加载 dll
创始人
2024-08-01 14:51:26
0

Qt QLibrary 动态加载 dll是本文要介绍的内容,先来配置环境,测试平台:Windows XP Sp3 + Qt 4.5 + Compaq Visual Fortran Version 6.6。

下了个Qt Creator功能挺强大的,测试一下QLibrary动态加载VS下编译的Fortran写的dll。在pushButton上建立click()信号的槽

  1. #include "mainwindow.h"  
  2.  
  3. #include "ui_mainwindow.h"  
  4.  
  5. #include  
  6.  
  7. #include         //解决中文显示所需的库  
  8.  
  9. MainWindow::MainWindow(QWidget *parent)  
  10. : QMainWindow(parent), ui(new Ui::MainWindowClass)  
  11. {  
  12. ui->setupUi(this);  
  13. QTextCodec::setCodecForTr(QTextCodec::codecForLocale());   //设置中文显示,使用本地字库  
  14. connect(ui->OKButton,SIGNAL(clicked()),this,SLOT(close()));     //将OKButton的Clicked()信号帮定close()槽  
  15. }  
  16. MainWindow::~MainWindow()  
  17. {  
  18. delete ui;  
  19. }  
  20. void MainWindow::on_OKButton_2_clicked()        //OKButton_2的槽  
  21. {  
  22. ui->label->setText(QApplication::translate("MainWindowClass", "aaa", 0,QApplication::UnicodeUTF8 ));    //另一种文本转换方法,不知有啥优点...  
  23. int a=1,b=2,c=6;  
  24. typedef void (*myfun)(int,int,int *);       // 定义导出函数类型  
  25. QLibrary hdll( "test01.dll" );        //加载dll,当前目录  
  26. if(hdll.load())  
  27. {  
  28. myfun fun1 = (myfun)hdll.resolve("MYSUB");        //用resolve来解析fun1函数  
  29. if ( fun1 )       //解析成功则进行运算并提示相关信息  
  30. {  
  31. fun1(a,b,&c);  
  32. QString qss=tr("dll加载成功!\n 1+2=")+QString::number(c,10);  
  33. ui->label->setText(qss);  
  34. }  
  35. }  

运行结果:

详解 Qt 下 QLibrary 动态加载 dll

Qt Creator 编辑界面:

详解 Qt 下 QLibrary 动态加载 dll

PS:minGW编译Qt,速度太慢了~

小结:详解 QtQLibrary 动态加载 dll 的内容介绍完了,希望本文对你有所帮助,更多内容请参考编辑推荐!

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...