- Registriert
- 06.06.14
- Beiträge
- 10
Hallo!
Ich bin neu hier. Ich habe mit viel Suchen im Internet einen AppleScript geschrieben, mit dem ich aber noch nicht ganz zufrieden bin.
Ich verwende Snow Leopard Server als Virtual Machine in Parallels. Da man bei der Server-Version ums Einloggen nach dem Hochfahren nicht drumrum kommt, habe ich einen Skript geschrieben, der die VM startet und mich einloggt, nachdem diese hochgefahren ist.
Nun kann das Hochfahren der VM aber zwischen ca. 15 und 35 Sekunden dauern, je nach Auslastung meines Systems (Mountain Lion) und abhängig davon, ob die VM zum ersten oder zum wiederholten Mal nach dem Booten des Computers gestartet wird. Um nur so lange wie nötig warten zu müssen, bis der Skript mich nach dem Erscheinen des Login-Fensters einloggt, würde ich den "delay 35" gerne etwas flexibler gestalten. Was im Gast-System der VM geschieht dürfte durch AppleScript im Host-System nicht erfasst werden können. Was sich jedoch ca. 2 Sekunden vor dem Erscheinen des Login-Fensters ändert, ist, dass in der Fußleiste des VM-Fensters (das ja als Fenster innerhalb des Prozesses "Parallels Desktop" noch zum Host-System gehört) eine Textzeile ausgeblendet wird ("Die Parallels Tools sind nicht installiert. …" Siehe Bilder unten).
Ist es möglich, diese Textzeile zu überwachen?
Ich stelle mir den Code dann ungefähr so vor:
Mein Problem ist, den richtigen Code für die "Dummyzeile" zu finden.
Wenn ich auf eines der Symbole in der Fußleiste klicke und diese Aktion mit Automator aufnehme, spuckt dieser mir folgenden Skript aus:
Ich muss also vermutlich mit "… group 1 of window "Snow Leopard Server - Parallels Desktop"" arbeiten, nur was kommt statt dem Platzhalter "…"?
Ich bin neu hier. Ich habe mit viel Suchen im Internet einen AppleScript geschrieben, mit dem ich aber noch nicht ganz zufrieden bin.
Ich verwende Snow Leopard Server als Virtual Machine in Parallels. Da man bei der Server-Version ums Einloggen nach dem Hochfahren nicht drumrum kommt, habe ich einen Skript geschrieben, der die VM startet und mich einloggt, nachdem diese hochgefahren ist.
Code:
tell application "Finder" to open "Macintosh HD:Users:user_name:Documents:Parallels:Snow Leopard Server.pvm"
delay 35
tell application "System Events" to keystroke tab & "admin" & tab & "password" & return
Nun kann das Hochfahren der VM aber zwischen ca. 15 und 35 Sekunden dauern, je nach Auslastung meines Systems (Mountain Lion) und abhängig davon, ob die VM zum ersten oder zum wiederholten Mal nach dem Booten des Computers gestartet wird. Um nur so lange wie nötig warten zu müssen, bis der Skript mich nach dem Erscheinen des Login-Fensters einloggt, würde ich den "delay 35" gerne etwas flexibler gestalten. Was im Gast-System der VM geschieht dürfte durch AppleScript im Host-System nicht erfasst werden können. Was sich jedoch ca. 2 Sekunden vor dem Erscheinen des Login-Fensters ändert, ist, dass in der Fußleiste des VM-Fensters (das ja als Fenster innerhalb des Prozesses "Parallels Desktop" noch zum Host-System gehört) eine Textzeile ausgeblendet wird ("Die Parallels Tools sind nicht installiert. …" Siehe Bilder unten).
Ist es möglich, diese Textzeile zu überwachen?
Ich stelle mir den Code dann ungefähr so vor:
Code:
tell application "Finder" to open "Macintosh HD:Users:user_name:Documents:Parallels:Snow Leopard Server.pvm"
delay 15
tell application "System Events"
if the name of the front window of application process "Parallels Desktop" is "Snow Leopard Server - Parallels Desktop" then -- DUMMYZEILE
delay 2
----------
tell application "System Events"
if the name of the front window of application process "Parallels Desktop" is "Snow Leopard Server - Parallels Desktop" then -- DUMMYZEILE
delay 2
-- Code zwischen den Linien an dieser Stelle noch achtmal verschachtelt einfügen.
else
delay 3
tell application "System Events" to keystroke tab & "admin" & tab & "password" & return
end if
end tell
----------
else
delay 3
tell application "System Events" to keystroke tab & "admin" & tab & "password" & return
end if
end tell
Mein Problem ist, den richtigen Code für die "Dummyzeile" zu finden.
Wenn ich auf eines der Symbole in der Fußleiste klicke und diese Aktion mit Automator aufnehme, spuckt dieser mir folgenden Skript aus:
Code:
tell application "System Events" to click UI element 1 of group 1 of window "Snow Leopard Server - Parallels Desktop" of application process "Parallels Desktop"
Ich muss also vermutlich mit "… group 1 of window "Snow Leopard Server - Parallels Desktop"" arbeiten, nur was kommt statt dem Platzhalter "…"?


Zuletzt bearbeitet: