Qt:进程与进程间通信

本文介绍了如何在Qt环境中进行进程的启动和管理,例如通过QProcess类启动tar进程进行文件打包。重点讲解了如何进行进程间通信,包括设置工作路径、读写进程的输入输出,以及处理进程的错误和退出状态。此外,还提及了QtDBus,但未展开详细讨论。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

eg:   //启动一个tar进程,打包备份某个路径下的所有内容。
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    if(a.arguments().count() != 2){
        qDebug() << QObject::tr("需要一个备份路径作为参数,如:'process /home'");
        return -1;                            
    }
    QProcess proc;
    QStringList arguments;
    arguments << "czvf" << "backup.tar.gz";
    arguments << a.arguments().at(1);
    proc.start("tar",arguments);  //启动tar进程
    if(!proc.waitForStarted()) //若成功,tar程序开始运行
        return false;
    proc.closeWriteChannel(); //不需要向进程输入数据,所以关闭了写通道
    QByteArray proOutPut;
    while(!proc.waitFor
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值