MFC调用Qt生成的dll
MFC和QT的消息循环机制不同,所以,要让QT写的DLL可以供MFC调用,要做一点特殊的处理
- #include <qmfcapp.h>
- #include <qwinwidget.h>
- #include <QtGui>
- #include <QtGui/QMessageBox>
- #include <windows.h>
- #include <QTextCodec>
- #include "widget.h"
- BOOL WINAPI DllMain( HINSTANCE hInstance, DWORD dwReason, LPVOID /*lpvReserved*/ )
- {
- static bool ownApplication = FALSE;
- //加入本地语言支持
- QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
- QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
- if ( dwReason == DLL_PROCESS_ATTACH )
- {
- ownApplication = QMfcApp::pluginInstance( hInstance );
- }
- if ( dwReason == DLL_PROCESS_DETACH && ownApplication )
- {
- qApp->quit();
- delete qApp;
- }
- return TRUE;
- }
- extern "C" __declspec(dllexport) int ShowDialog( HWND parent)
- {
- QWinWidget win(parent, NULL, Qt::Window);
- win.showCentered();
- win.center();
- QHBoxLayout hbox(&win);
- Widget *widget = new Widget(&win);
- widget->setWindowFlags(Qt::Window);
- hbox.addWidget(widget);
- win.show();
- qApp->exec();
- }
转载于:https://blog.51cto.com/laokaddk/871770
MFC调用Qt生成的dll相关推荐
- vs2008中调用matlab生成的dll
vs2008中调用matlab生成的dll matlab版本为:matlab7.11.0(R2010b) vs2008 1.在matlab中生成dll 在m文件中实现如下功能: 获得N个魔方矩阵的秩. ...
- c#调用matlab生成的dll
c#调用matlab生成的dll,这个过程分为三步: 1.编写matlab代码 2.将.m文件编译成dll 3.在C#代码里调用dll 打算实现的功能: 求x*y的二维数组的均方差 一.编写matla ...
- qt调用matlab生成的dll库
最近由于在项目中要用到matlab的算法,而用C++转换matlab算法非常麻烦,所以采用qt+matlab混合编程的方法,在使用中遇到了些许问题,特记录如下. 一.生成matlab库 1.首先需要下 ...
- Delphi 调用VC生成的DLL
1. 在VC中新建一个 DLL 工程. 写如代码,如: extern "C" { _declspec(dllexport) int getPPLength(); _decl ...
- java调用qt生成的dll_在Qt中调用vs2008生成的dll以及lib的方法
[实例简介] 详细讲解了制作lib,dll的过程,以及如何在同平台进行对两种链接库的使用,并且详细说明了在跨平台的时候,如何进行操作 新建一个工程添加.cpp文件,在文件里面进行如下的代码: #pra ...
- VB6 调用 Nim 生成的 DLL
2019独角兽企业重金招聘Python工程师标准>>> 关于 Nim Nim 是德国人 开发的编程语言,最初叫 Nimrod.Nim 有下面几个特点: 强制缩进语法 AST 操控 编 ...
- C#调用Matlab生成的dll方法
其实整个过程比较简单,但是需要心细一点. 需要的工具:VS2005及以上版本,MATLAB2008B及以上版本,另外非常重要的需要安装一个MATLAB Compiler Runtime,这个文件(MC ...
- 如何在Delphi 中调用C#生成的DLL类库
最近需要写一个和给上位机和下位机通讯的接口,而上位机是用Delphi开发的,所以就需要用C#做一类库给Delphi调用 大概步骤: 1.首先在VS2008中新建一个类项目名为TestDelphi,然后 ...
- matlab调用VC++生成的DLL
matlab是一种脚本语言,执行效率肯定没有C语言那样高效,当然matlab支持调用由C语言生成的.dll动态链接库,从而可以达到matlab与C语言混合便宜的效果. 注意:我使用的平台是matlab ...
最新文章
- android 保存 用户名和密码 设置等应用信息优化
- php带参数单元测试_一文搞定单元测试核心概念
- http-关于application/x-www-form-urlencoded等字符编码的解释说明
- 蓝绿发布、滚动发布、灰度发布,有什么区别?
- SQLite的基本使用一
- python怎么安装beautifulsoup,python – 安装BeautifulSoup
- Java常用集合类:ArrayList
- linux命令--vi,vim
- zabbix4.2中163邮箱25端口无法发送邮件
- 具体数学-第8课(取整进阶)
- 群集之 COROSYNC OPENAIS +PACEMAKER +REBD+WEB
- Python字符串逆序输出(六种方法)
- linux 一键网克,MaxDOS 8.0
- 读《谁说大象不能跳舞》
- 17.keep-alive的作用及用法
- dataTables -- ajax 分页基本使用
- 计算机网络——BGP协议
- ShowWindow 隐藏、显示、最大化、最小化窗口
- 微信开发之小程序的页面布局
- python中的global是什么意思_Python中的global关键字,你了解吗?
热门文章
- 一款简洁大气的商城官网介绍源码
- 一个社交电商小程序配套的平台接
- 跨平台桌面应用开发工具Electron v11.0.4
- Spring Cloud微服务之Feign服务调用(十一)
- 用Google App Engine做个人代理服务器
- 关于“服务器提交了协议冲突. Section=ResponseStatusLine问题请
- Memcache分布式部署方案
- SQL Server 2000订阅与发布的具体操作
- nginx下gzip配置参数详解
- 【转载】IDEA中Git的更新/提交/还原方法