当前位置: 首页 > news >正文

十堰微网站建设一元友情链接平台

十堰微网站建设,一元友情链接平台,外贸订单网站有哪些,深圳企业建站设计公司博主使用QT调用外部exe程序&#xff0c;外部exe程序有printf输出&#xff0c;起初使用的是C语言中的system()方法&#xff0c;但在笔记本上有概率出现终端窗口一闪而过的情况&#xff0c;后修改了调用方案。 1. QT调用外部exe 使用QT中的QProcess方法 #include <QProcess…

博主使用QT调用外部exe程序,外部exe程序有printf输出,起初使用的是C语言中的system()方法,但在笔记本上有概率出现终端窗口一闪而过的情况,后修改了调用方案。

1. QT调用外部exe

使用QT中的QProcess方法

#include <QProcess>QProcess process;
QString cmd ="../test.exe 1 2";
process.start(cmd); // 启动可执行程序
process.startDeteched(cmd);
process.execute(cmd);

注意,此处启动可执行程序的方式有3种:

  1. start:外部程序启动后,将随主程序的退出而退出
  2. startDeteched:外部程序启动后,当主程序退出时并不退出,而是继续运行。
  3. execute:带阻塞

2. 无终端弹窗的解决方案

QProcess方法默认是无弹窗的,要想弹窗,需做如下设置:

    QProcess process(this);process.setCreateProcessArgumentsModifier([](QProcess::CreateProcessArguments *args) {args->flags |= CREATE_NEW_CONSOLE;args->startupInfo->dwFlags &= ~STARTF_USESTDHANDLES;args->startupInfo->dwFlags |= STARTF_USEFILLATTRIBUTE;args->startupInfo->dwFillAttribute = BACKGROUND_BLUE | FOREGROUND_RED | FOREGROUND_INTENSITY; // 定义终端背景及字体等颜色,可不指定.});process.start("../test.exe 1 2");process.waitForStarted(); // 等待子进程执行结束process.waitForFinished();// process.close(); // 强制关闭子进程

注意,此处不能使用execute方法,否则无效。对于CREATE_NEW_CONSOLE等关键字,不是QT本身定义的内容,其被定义在Windows.h头文件中,所以需要包含该头文件。

3. 实现进程输出信息的获取

使用readAll()或者readAllStandardOutput()方法实现,案例如下:

#include <QProcess>
#include <QTextCodec>QProcess process;
process.start("../test.exe 1 2");
process.waitForFinished();
process.waitForReadyRead();
QByteArray qba  = process.readAll();QTextCodec* pTextCodec = QTextCodec::codecForName("System");
assert(pTextCodec != nullptr);
QString str = pTextCodec->toUnicode(qba);
qDebug("%s\n",str.toStdString().c_str());

参考链接:

  • https://doc.qt.io/qt-5/qprocess.html#CreateProcessArgumentModifier-typedef
  • https://cloud.tencent.com/developer/article/1932764?from_column=20075
  • https://blog.csdn.net/kangkanglhb88008/article/details/125823353
  • https://blog.csdn.net/VVBBBBB/article/details/121016042
  • https://blog.csdn.net/m0_56554817/article/details/128252004
http://www.hkea.cn/news/464422/

相关文章:

  • 网站建设 零基础网站关键词如何优化
  • 如何撤销网站上信息app网站
  • 单页式网站系统每日新闻摘要30条
  • 网站开发公司 广告词优化方案电子版
  • 做便民工具网站怎么样关键词挖掘站长工具
  • 纺织面料做哪个网站好百度站长资源
  • 菏泽网站建设哪好怎样做平台推广
  • 网上有做logo的网站吗网络营销的核心是什么
  • 自建网站怎么做推广微信营销策略
  • 跳网站查询的二维码怎么做的关键词排名点击软件网站
  • 兼容手机的网站百度怎么推广自己的视频
  • 宝安中心医院入职体检跟我学seo
  • 企业网站后端模板石家庄疫情最新情况
  • 沈阳哪家网站做的好网络营销是指什么
  • 我的网站模板网站建设主要推广方式
  • 国外app素材网站seo运营是做什么的
  • 企业网站seo怎么做百度帐号个人中心
  • 郑州网站建设亅汉狮网络百度网盘seo优化
  • 模板型网站seo优化平台
  • 官方网站下载免费软件培训机构有哪些?哪个比较好
  • 网站导航怎么做的惠州seo计费管理
  • 建设公司网站模板全国唯一一个没有疫情的城市
  • 网站怎么做seo_南京百度提升优化
  • 旅游网站开发与设计论文怎么样建网站
  • 北京网站推广排名公司企业网站的搜索引擎推广与优化
  • 动态网站期末设计广告营销策略
  • 山东网站营销推广费用旺道seo推广
  • 邢台网站建设服务周到百度数据分析工具
  • 周口网站建设竞价恶意点击犯法吗
  • 网站建设没有预付款seo快速提升排名