Ошибка LSOpenURLSpec - PullRequest
       14

Ошибка LSOpenURLSpec

0 голосов
/ 17 сентября 2009

Я создал минимальную загрузочную флешку для OS X (в основном DVD-диск Snow Leopard со всеми пакетами и программой установки). Я написал базовую панель запуска приложений Cocoa для запуска других приложений, которые я помещаю в папку «Приложения» (в минимальной установке отсутствуют Dock и Finder).

Когда я пытаюсь запустить приложение, я получаю эту ошибку:

LSOpenFromURLSpec () вернул -10810 для пути приложения (ноль) /Applications/MyApp.app

Где «MyApp.app» - приложение, которое я пытался запустить. Я пробовал это с помощью метода openFile NSWorkspace и утилиты «open» UNIX, и я получаю более или менее ту же ошибку. Один из способов запуска приложения - если я просто запускаю основной исполняемый файл самого приложения. (например, /Applications/MyApp.app/Contents/MacOS/MyApp). Однако этот метод довольно неудобен, так как он останавливает лаунчер до тех пор, пока не завершится запущенное мной приложение. Какие-либо альтернативные способы запуска приложения (или исправления ошибки LSOpenFromURL)?

Спасибо

Ответы [ 2 ]

0 голосов
/ 04 октября 2009

open полагается на Launch Services, который использует Finder. Ваш обходной путь сценария запускает новый фоновый процесс, выполняющий код приложения со стандартным выходом и стандартной ошибкой, открытой для /dev/null. Это должно работать нормально.

Эквивалентом C в Mac OS X будет posix_spawn или fork / vfork, а затем exec исполняемый файл.

0 голосов
/ 26 сентября 2009

Найден обходной путь:

/ Приложения / MyApp.app / Содержание / MacOS / MyApp> / dev / null 2> / dev / null &

Использование этой команды запускает приложения без остановки программы запуска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...