总第14篇
本文主要详细总结了在Qt项目开发过程中,如何借助QProcess类快速实现外部程序调用,并在此基础上说明了相关接口的用法。通过阅读本文你将掌握程序进程间调用的方法,以便在以后的开发过程中可以参考。
1.QProcess类及接口介绍
QProcess类是Qt中专门用于启动一个外部程序进程并与主程序通信的。此类中包含多个静态函数和信号,可以方便地通过信号与槽机制实现信息互通。
我们要实现快速调用外部程序,常用的有三个接口函数:
QProcess::execute()
: 此函数是以阻塞的方式打开外部程序,只有外部程序执行完成后,主程序才会继续执行。外部程序的标准输出、标准错误都是重定向到主程序的标准输出和标准错误的。QProcess::start()
: 此函数是以子进程的 方式打开外部程序的,外部进程与主程序互不干扰,但外部进程的父进程就是主程序。QProcess::startDetached()
: 此函数是以分离的方式打开外部程序的,外部程序与主程序互不干扰,外部进程的父进程是系统的init
进程。
上面三个接口函数中,execute()
和startDetached()
为静态成员函数,