包含qt执行linux命令的词条

QT中怎么调Linux 命令

有个这类 QProcess 

成都创新互联公司网站建设由有经验的网站设计师、开发人员和项目经理组成的专业建站团队,负责网站视觉设计、用户体验优化、交互设计和前端开发等方面的工作,以确保网站外观精美、成都网站设计、做网站易于使用并且具有良好的响应性。

QProcess p(0);

QString command = "";

QStringList args;

QString strTemp = "";

QStringList tmpList;

/**

* 调用 hostname 命令 获取机器名

================================================================ */

QString hostname = "";

command = "hostname";

args.clear();

p.start( command,args );

p.waitForFinished();

strTemp = QString::fromLocal8Bit( p.readAllStandardOutput() );

hostname = strTemp.replace( "\n","").trimmed();

qDebug()"hostname:" hostname;

qt可编译运行但不能独立运行linux

出问题的exe名称为TestApp.exe,在Visual Studio下编译运行都正常,但无法直接点击exe运行。报错为(应用程序无法正常启动(0xc000007b)。请单击“确定”关闭应用程序)

本人环境:基于visual studio IDE下的QT编译器,共有四种,在 qt-版本号 文件夹下。

我的问题解决步骤如下:

1.看准自己项目的编译环境

我电脑虽然是64位的,但是编译器环境是32位的,故之后所有都需要以32位为标准

由于是Visual Studio ,所以采用下面文件夹中的msvc2017环境进行编译(没有标注64位就是32位)

2.添加系统环境变量

打开控制面板搜索环境变量,对系统path进行更改

按照上一步的环境进行配置!!!不要添加冗余路径,一项即可!!

PS:多项也可以,但是要在IDE中选择正确的default编译器,不然系统会搞混64和32位的dll

3.进入qt自带的命令行中

开始框中搜索 → 选择合适的环境(比如我是MSVC 2017 32-bit)→ 进入目标exe程序所在文件夹

输入命令

windeployqt xxx(目标exe名称)

复制

PS:该命令(windeployqt)若添加了系统Path后,也可以直接在系统cmd中运行,前提是:环境Path只有适合自己项目的那一项!!(only 32 or 64)  否则系统会弄混。。。然后就又失败链接了qaq

此时,在exe的文件夹下面会多出很多文件夹和dll文件,表明已经link成功

再次强调:不同位数的编译器链接出来的dll不同!一定一定要适合自己的程序

qt 调用linux系统命令修改系统时间,该怎么处理

// 修改系统时间很简单 // 采用QProcess来实现QProcess::exectu("date 031210252014"); // 0312 表示3月12日,1025表示当前时分QProcess::exectu("hwclock -h); // 同步系统时间Qprocess::exectu("sync"); // 保存配置

qt 调用linux系统命令修改系统时间,直接输入代码修改系统时间即可。


分享名称:包含qt执行linux命令的词条
转载来源:http://ybzwz.com/article/doocioe.html