
2. cmd命令格式不正确,导致无法执行;
3. 程序路径不正确,无法找到cmd;
4. 程序运行时出现错误,导致无法执行cmd命令。
如果你遇到这种情况,可以尝试以下解决方案:
1. 确亮高丛认程序权限是否足够,尝试以管理员身份运行程序念空;
2. 检查cmd命令格式是否正确,可以通过手动执行cmd命令测试;
3. 确认程序路径是否正确,可以使用绝对路径或者相对路径;
4. 查看程序日志或者调试信息,确定程序是否出现错误。
如果以上方法无法解决问题,可以考虑使用其他方法启动cmd命令,例如使敬樱用Qt的QProcess启动其他命令或者使用系统API启动cmd。
本文介绍,在Linux环境下,使用Qt中的 QProcess 类执行shell命令并获取输出。
头文件: #include <QProcess>
一、函数接口
QProcess 类提供了三个函数
二、执行命令
这里主要介绍 execute() 和 start() :
execute() 会将命令输出直接打印到控制台,调用程序无法捕获。
调用程序可通过 readAllStandardOutput() 捕获shell命令的输出
三、管 道
对于shell命令中的 | ,直接传入参数是不行的。
以上的方式是无法执行的。
可以将整个命令作为 sh 的参数传入 或 使用 QProcess::setStandardOutputProcess(QProcess *destination) 即将一个进程的标准输出流传入目标进程的标准输入流
对于需要sudo权限的命令,需要使用sudo权限打开qtcreator,或者直接在命令前加上sudo(不建议)。
当然, QProcess 不仅仅可以执雀厅行shell命令旅早,也可以用于执行调拆岁雀用外部程序。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)