Песочница в OS X: LSOpenFromURLSpec () вернул -10827 - PullRequest
1 голос
/ 03 апреля 2012

Мы используем небольшое вспомогательное приложение для запуска нашего основного приложения после входа в систему. Но мы не можем запустить наше основное приложение, потому что LSOpenFromURLSpec () возвращает код ошибки -10827.

Неважно, если мы используем:

[[NSWorkspace sharedWorkspace] launchApplication:@"/Applications/Appname.app"];

или

[[NSWorkspace sharedWorkspace] launchApplication:@"Appname"];

Возвращает ошибку каждый раз. Как мы можем это исправить?

Ответы [ 3 ]

5 голосов
/ 17 апреля 2012

Согласно заголовкам LaunchServices, эта ошибка означает, что он не может найти исполняемый файл в комплекте приложений:

kLSNoExecutableErr            = -10827, /* The executable is missing*/

В своем заголовке вы ссылаетесь на изолированную программную среду OS X, поэтому я предполагаю, что вы 'Мы столкнулись с этой проблемой в изолированном приложении.Возможно, вам не разрешено запускать другие приложения с текущими правами.Простой способ проверить это написать неограниченный инструмент командной строки, который вызывает только -launchApplication:.

1 голос
/ 17 апреля 2012

Попробуйте это:

[[NSWorkspace sharedWorkspace] launchApplication:@"/Applications/Appname.app/Contents/MacOS/Appname"];
0 голосов
/ 26 августа 2013

А как же:

NSRunningApplication *newAppRunning = [[NSWorkspace sharedWorkspace] launchApplicationAtURL:[[NSBundle mainBundle] bundleURL] options:NSWorkspaceLaunchAsync | NSWorkspaceLaunchNewInstance configuration:nil error:&erroer];

Это позволит перезапустить текущее приложение. Вероятно, это работает, если они оба находятся в одной группе приложений.

см. Также: Можно ли перезапустить приложение при развертывании песочницы?

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