2014-04-29 13 views
5

jestem uruchomienie launchAgent od słupka zainstalować skrypt przy użyciu następującego polecenia:OSX: „Okno Server: failed ustawienie przedniego aplikację do mojego app”

su -l $LOGGED_IN_USER -c "/bin/launchctl load /Library/LaunchAgents/com.myApp.mac.agent.plist" 

Agent wyświetla element stanu (NSStatusItem) z kilka opcji menu. Jeden z nich ma opcję ustawień. Kliknięcie tego przycisku otworzy NSWindow, z kilkoma NSTextField s. Czasami, chociaż to okno jest najwyższe, wszystko, co wpisuję, trafia do podstawowej aplikacji. Nie mogę wpisać niczego w polu tekstowym. Ilekroć tak się stanie, widzę następujący dziennik w konsoli:

WindowServer[97]: [cps/setfront] Failed setting the front application to MyApp, psn 0x0-0xb20b2, securitySessionID=0x186c5, err=-600 

To nie jest spójne zachowanie. Masz pomysł, dlaczego ten dziennik przychodzi? I czy jest jakaś praca nad tym? Czy można uruchomić agenta przy użyciu su -l?

Odpowiedz

1

Nie wiem, dokładnie, dlaczego otrzymujesz ten błąd i zachowanie. Polecam lekturę Technical Note TN2083: Daemons and Agents. Wyjaśnia szczegółowo różne aspekty kontekstu wykonawczego procesu i jego wpływ na to, co może zrobić proces. Obejmuje to, czy proces może łączyć się z serwerem Windows.

Co jest warte, błąd -600 to procNotFound, którego opis to "brak kwalifikującego się procesu z określonym deskryptorem". Wygląda na to, że Window Server nie może znaleźć procesu z podanym numerem seryjnym procesu (PSN) w danej sesji bezpieczeństwa.

Nie użyłbym polecenia -l w poleceniu sudo. Skrypty logowania użytkownika mogą wykonywać różne szalone rzeczy, a nie te wykonywane przez instalatora. Jednak nie sądzę, że jest to związane z głównym problemem.

+0

Poszedłem thro, że uwagi techniczne .. ale dint znaleźć coś dla mnie pomocne .. –