我有一个使用 Qt 框架的 GUI 应用程序,另一个仅处理来自 stdin
的一些文本并在 stdout
中显示其输出。
如何从 Qt 应用程序中移植使用第二个可执行文件? 主应用程序的用户将创建需要处理的数据。 (结果将显示回给用户)
第二个应用程序无法知道/依赖于主应用程序的任何内容,因此开发类似抽象的服务器是不可能的。
我不想为此编写 Linux 特定代码,因为应用程序将来需要在其他平台上运行。
最佳答案
您可以使用QProcess
启动第二个应用程序,提供输入并读取其输出:
QProcess process;
process.start("secondApp");
process.waitForStarted();
process.write(input, count);
process.closeWriteChannel();
process.waitForFinished();
QByteArray output;
output = process.readAllStandardOutput();
关于c++ - 使用外部可执行文件作为管道的 Qt 'way' 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29185055/