Программно откройте PrefPane с разделом

Я должен открыть сеть-prefpane в своем Приложении. Это хорошо работает с

[[NSWorkspace sharedWorkspace] openFile:@"/Path/To/PrefPane"];

Но как может я непосредственно открытый "настройки прокси", который находится в "сетевой приставке" под "усовершенствованным"?

Вы видите это в Настройках Safari под "Усовершенствованным-> Прокси"

Спасибо

5
задан Nobik 11 January 2010 в 13:24
поделиться

2 ответа

Самый простой и чистый способ, который я нашел, это использование Applescript.

NSAppleScript *a = [[NSAppleScript alloc] initWithSource:@"tell application \"System Preferences\"\nactivate\nset current pane to pane \"com.apple.preference.universalaccess\"\nend tell"];
[a executeAndReturnError:nil];
[a release];

Замените com.apple.preference.universalaccess на имя панели. Вот полный список имен панелей привилегий .

7
ответ дан 14 December 2019 в 01:09
поделиться

При запуске второго действия немедленно завершите () первый:

startActivity(new Intent(...));
finish();
-121--845279-

Попробуйте добавить параметр/WAIT. Он будет держать .bat в ожидании до завершения сценария PowerShell.

START /WAIT powershell "& "C:\data\etc\run_import_script.ps1"
-121--1300809-

Несмотря на то, что это возможно при использовании сценариев пользовательского интерфейса, также требуется доступ к вспомогательным устройствам (Системные предпочтения- > Универсальный доступ). Это не кажется правильным, потому что если пользователь предпочитает отключенный доступ, это просто не сработает. Если требуется изменить параметры настройки прокси-сервера, можно использовать SystemConfiguration .framework напрямую, пройдя необходимую проверку подлинности.

2
ответ дан 14 December 2019 в 01:09
поделиться