shell 执行qt生成文件_QT下执行Shell或启动外部程序

本文介绍了在QT环境下执行Shell命令和启动外部程序的两种方案。方案一利用C函数`system()`或通过`fork`和`execv`组合;方案二使用QT的QProcess类,包括`start()`和`execute()`方法。示例代码展示了如何实现这些功能,如调用系统命令和启动文本对比软件。
摘要由CSDN通过智能技术生成

QT下执行Shell 或启动外部程序

方案一:

调用linux C函数库中的int system(const char * string);应该能够实现你需要的功能

system( command )

特定指令被执行并且如果它返回一个1的退出值,那么这个作用域中的设置将会被处理。例如:

system( ls /bin ) {

SOURCES += bin/main.cpp

HEADERS += bin/main.h

}

所以如果命令ls /bin返回1,那么bin/main.cpp将被添加到源文件列表中并且bin/main.h将被添加到头文件列表中。

你是说LINUX里面的CONSOLE窗口?

fork之后,在子进程里用exec来执行一个相关程序就可以了。程序名不记得了,自己看一下就知道了。

这样就可以运行一个shell程序

char * args [2] = { "/bin/sh", NULL };

execv (args [0], args);

如果要弹出的话,用fork或system

if (fork () == 0) {

execv (args [0], args);

exit(1);

}

system(args[0]);

system("/etc/rc.d/init.d/leds stop");

方案二:

使用QProcess启用外部程序

因为目前的程序需要提供一个文件对比的功能,而目前

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值