Как запустить исполняемый файл с графическим интерфейсом из уже запущенного приложения с графическим интерфейсом

У меня есть приложение, работающее в OS X, которое должно запустить другой исполняемый файл с графическим интерфейсом, а затем закрыть себя, оставив этот другой графический интерфейс без изменений.

Прямо сейчас я запускаю другой исполняемый файл с вилка затем execve и закрытие приложения, которое запустило его, но новый исполняемый файл удерживает строку меню от приложения, которое только что закрылось. Это мешает мне запустить оригинальное приложение, пока я не закрою окно для исполняемого файла.

Единственное, что я нашел, это люди, которые говорят, что нужно использовать поЬир но из того, что я понимаю, что просто останавливает закрытие программы при закрытии родителя?

РЕДАКТИРОВАТЬИзучив функции в первом ответе, я понял, что должен был включить некоторые подробности. Я использую OS X 10.8, которая, кажется, устарела во многом API файлового менеджера. Еще одна важная деталь — мне нужно передать аргументы командной строки в исполняемый файл.

3

Решение

Какао путь будет -[NSWorkspace launchApplication:], На немного более низком уровне, но все еще намного выше BSD, есть LSOpenApplication,

2

Другие решения

Как оказалось, мой исполняемый файл, который я пытался запустить, который изначально был в другом пакете приложения, использовал PLIST файл для приложения, запускающего исполняемый файл. У меня был исполняемый файл в папке Contents / MacOS, где находился исполняемый файл для исходного приложения. Поместив другой исполняемый файл в собственный пакет приложения, я смог использовать вилка а также execve на исполняемый файл в своем собственном пакете, чтобы правильно запустить его.

0

По вопросам рекламы [email protected]