近期参与的项目中,与同事协作开发,对方负责编写shell脚本,由我方APP调用。APP采用QT框架开发,在调研后决定使用QProcess来实现对shell脚本的调用。整体开发过程较为顺利,现将相关经验整理分享,希望能为有类似需求的开发者提供参考和帮助。
1、 必须包含相关头文件,否则编译将无法通过。
2、 在调用外部程序前,先检查文件是否存在,确认后再创建QProcess实例进行调用。
3、 启动时调用start函数,第一个参数为可执行程序或shell脚本,第二个参数为需传递的命令行参数。
4、 可通过调用waitForStarted()函数判断程序是否已启动,该函数会阻塞后续执行,直至程序成功启动后才继续运行。
5、 下图代码用于等待被调用程序或Shell脚本执行完毕,结束后可通过exitCode获取返回值,以此判断执行是否成功。
6、 记得及时释放资源,避免造成浪费或错误,这是每个开发者都应牢记的基本原则。
7、 需注意,当调用的艳帽捧程序或Shell脚本执行完毕后,会自动发出finish()信号。若需使用该信号,应提前进行connect连接操作,具体方法所示。
评论
更多评论