Как запустить приложение и принести его к переднему API Какао использования?

Я очень плохо знаком с программированием какао, и я не могу найти способ сделать следующее:

  • Запустите конкретное приложение по имени
  • Сделайте некоторую работу
  • Позже принесите то приложение, я начал быть передним процессом

Из того, что я нашел в Углеродном API, он похож на вызовы, которые я должен использовать, launchApplication () и setFrontProcess ().

Но как сделать это в Какао? Т.е. запустите его, получите PID, установите тот PID, чтобы быть передним процессом. Я пытался погуглить для примеров и ничего не найти...

Если бы какой-либо из Вас может обеспечить минималистический образец, который был бы потрясающим:)

Заранее спасибо.

16
задан dimsuz 25 February 2010 в 09:55
поделиться

3 ответа

Для запуска приложения :

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

Для активации приложения :

NSRunningApplication* app = [NSRunningApplication
                             runningApplicationWithProcessIdentifier: PID];
[app activateWithOptions: NSApplicationActivateAllWindows];
// or
NSArray* apps = [NSRunningApplication
                 runningApplicationsWithBundleIdentifier:@"com.bla.blah"];
[(NSRunningApplication*)[apps objectAtIndex:0]
 activateWithOptions: NSApplicationActivateAllWindows];
31
ответ дан 30 November 2019 в 16:42
поделиться

Чтобы запустить приложение, используйте класс NSWorkspace: NSWorkspace Reference

В частности, функцию launchApplication:.

Я не знаю ответа на вопрос об активации. Вы можете активировать собственное приложение с помощью -[NSApplication activateIgnoringOtherApps:], но я не знаю, как это сделать для других приложений.

4
ответ дан 30 November 2019 в 16:42
поделиться

Вы заглянули в NSRunningApplication?

1
ответ дан 30 November 2019 в 16:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: