码迷,mamicode.com
首页 > 其他好文 > 详细

QT:在qt中使用QProcess类执行tar指令

时间:2021-01-30 12:01:37      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:ESS   wait   pre   list   current   wms   ini   class   name   

Qt提供了一个QProcess类用于启动外部程序并与之通信。这个类是异步工作的,而且在后台执行,这样用户界面就可以始终保持响应。

QProcess::start()与QProcess::execute()都能完成启动外部程序的任务,二者有什么区别呢?区别在于start()是非阻塞的,而execute()是阻塞的。专业点讲,execute()=start()+waitforFinished()。

 

        //3、执行tar指令
        QProcess pTar;
        QString program = "tartool";
        QStringList arguments;

        QString sourceDir = armFileName;//+"/*";
        sourceDir = QDir::toNativeSeparators(sourceDir);
        QString tarGetDirName = armAppTarName;
        tarGetDirName = QDir::toNativeSeparators(tarGetDirName);
        arguments << sourceDir << tarGetDirName << "armApp.tar.gz";
        QString showTar = arguments.join(" ");
        showMsg("执行[tartool "+showTar+"]");
        //执行
        //QDir::setCurrent(armFileName);
        int res = pTar.execute(program,arguments);
        if(!res)
        {
           showMsg("执行成功");
        }
        pTar.close();    

  

 

QT:在qt中使用QProcess类执行tar指令

标签:ESS   wait   pre   list   current   wms   ini   class   name   

原文地址:https://www.cnblogs.com/jiangyu0331/p/14346412.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!