2012-12-20 34 views
3

我有一个在OS X中运行的应用程序,需要使用GUI启动另一个可执行文件,然后关闭自身,使其他GUI完好无损。如何在已经运行的GUI应用程序中使用GUI启动可执行文件

现在我启动其他可执行文件然后execve的和关闭启动它的应用程序,但新的可执行保持从刚刚闭幕的应用程序菜单栏。这阻止我运行原始应用程序,直到关闭可执行文件的窗口。

我唯一发现的是人们说使用nohup,但从我所了解的只是停止程序从关闭父母关闭时关闭?

编辑:在第一个答案中查看功能后,我意识到我应该包括一些更多的细节。我使用的OS X 10.8似乎已经弃用了很多文件管理器API。另一个重要的细节是我需要将命令行参数传递给可执行文件。

回答

0

事实证明,我试图启动的可执行文件原本是在另一个应用程序包中,它正在使用启动可执行文件的应用程序的plist文件。我在可用于原始应用程序的Contents/MacOS文件夹中有可执行文件。在将其他可执行文件放入其自己的应用程序包后,我可以使用forkexecve对其自己的包中的可执行文件进行正确启动。

2

可可方式将是-[NSWorkspace launchApplication:]。在稍低的水平上,但仍然高于BSD,有LSOpenApplication

相关问题