我有一个使用Qt框架的GUI应用程序和另一个只处理来自stdin
的文本并在stdout
中显示其输出的文档。
如何从Qt应用程序中可移植地使用第二个可执行文件? 主应用程序的用户将创建需要处理的数据。 (结果将显示给用户)
第二个应用程序无法知道/依赖于主应用程序的任何内容,因此开发像抽象这样的服务器是不可能的。
我不想为此编写特定于Linux的代码,因为将来应用程序需要在其他平台上运行。
答案 0 :(得分:2)
您可以使用QProcess
启动第二个应用程序,提供输入并读取其输出:
QProcess process;
process.start("secondApp");
process.waitForStarted();
process.write(input, count);
process.closeWriteChannel();
process.waitForFinished();
QByteArray output;
output = process.readAllStandardOutput();