如何在Linux中从Delphi 10.2 / 10.3应用程序中运行命令行实用程序,并捕获输出以进行进一步处理?
当我要在FMXLinux中使用GUI应用程序时,我需要逐行捕获以观察进度。这种适用于OSX的方法效果很好
Delphi: Capture OSX console output
谢谢!
答案 0 :(得分:1)
上面提到的为OSX创建的示例在Linux64上(在当前的Ubuntu上进行了测试)可以完美地工作,并且对定义进行了少量修改。由于更改很小,因此我不再重复代码(请参见Delphi: Capture OSX console output):
添加
Posix.Base
和
Posix.Fcntl
使用条款
通过_PU交换下划线来更改libc函数声明:
... cdecl; external libc name _PU + 'popen'; ...
现在,它也可以在OSX和Linux上编译和运行!