AppleScript - Как изменить принтер по умолчанию на основе сети - PullRequest
0 голосов
/ 11 февраля 2010

Я хотел бы создать приложение, которое будет запускаться на моем компьютере и которое будет изменять «Принтер по умолчанию» на панели настроек «Принтеры и факсы» в «Системных настройках» через AppleScript?

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

Как мне это сделать? Если вам нужен IP-адрес, сетевые имена и / или имена принтеров, оставьте комментарий и дайте мне знать. Есть 3 принтера, между которыми я хочу переключаться, и 3 беспроводных сети, между которыми я хочу переключаться.

Спасибо!

1 Ответ

1 голос
/ 11 февраля 2010

Примерно так вы начнете захватывать текущее местоположение. Вам нужно будет вызвать это при изменении местоположения, а затем, когда оно захватит местоположение, вам понадобится оператор if else для просмотра различных принтеров. MacScripter - отличное место для помощи Applescript; кто-то, вероятно, уже сделал то, что вы хотите сделать: MacScripter . Есть также способы получить сетевое местоположение в оболочке, что будет быстрее, чем у Applescript.

И есть MarcoPolo - контекстно-зависимые вычисления для Mac OS X , приложения, которые будут делать то, что вы хотите, без написания Applescript.

tell application "System Preferences"
   activate
end tell

tell application "System Events"
   tell application process "System Preferences"
       set frontmost to true
       click menu item "Network" of menu "View" of menu bar 1
--you may need a delay here, adjust to suit
delay 1
       set machineLocation to value of pop up button 1 of window "Network"
   end tell
end tell
tell application "System Preferences" to quit
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...