我有一个带有 GUI 的 Windows 程序,它还使用命令行界面(cmd 窗口)作为调试控制台。基本上,当它被双击时,它会启动一个命令行窗口,然后程序会创建所有的 GUI 窗口。然后您将拥有两个 Windows:主 GUI 和调试控制台。
我正在尝试将此程序移植到 OS X。因为当您运行命令行应用程序时,OS X(以及所有 Unix 操作系统)不会自动启动命令行窗口。所以,我显然需要另一种方式来移植这个应用程序。
我最初的想法只是将源代码导入 XCode 项目,重定向标准输入和输出,然后移植 GUI。GUI 和控制台将像在 Windows 中一样并行运行。我认为这不是最佳解决方案,因为这意味着我基本上必须编写一个终端仿真器。
我的另一个想法是将应用程序移植为命令行应用程序,就像在 Windows 中一样创建它的 GUI。然后必须从可以处理所有 I/O 的 Terminal.app 运行应用程序。不幸的是,我认为不使用 NSApplication 循环就无法使用 Cocoa 框架。
有什么想法可以解决这个问题吗?