从delphi应用程序运行linux命令行实用程序并捕获输出

时间:2018-12-10 20:40:10

标签: linux delphi

如何在Linux中从Delphi 10.2 / 10.3应用程序中运行命令行实用程序,并捕获输出以进行进一步处理?

当我要在FMXLinux中使用GUI应用程序时,我需要逐行捕获以观察进度。这种适用于OSX的方法效果很好

Delphi: Capture OSX console output

谢谢!

1 个答案:

答案 0 :(得分:1)

上面提到的为OSX创建的示例在Linux64上(在当前的Ubuntu上进行了测试)可以完美地工作,并且对定义进行了少量修改。由于更改很小,因此我不再重复代码(请参见Delphi: Capture OSX console output):

  1. 添加

    Posix.Base

    Posix.Fcntl

    使用条款

  2. 删除带有libc.dylib路径的行
  3. 通过_PU交换下划线来更改libc函数声明:

    ... cdecl; external libc name _PU + 'popen'; ...

现在,它也可以在OSX和Linux上编译和运行!