Ich schreibe einige ziemlich komplexe Applescripts, aber wenn etwas schief geht - Apple-Ereignis abgelaufen - oder ähnliches, kann ich nicht genau sagen, wo es fehlgeschlagen ist.
Im Moment verpacke ich alle Handler mit Try-Blöcken, mit einem on-Fehler, der den Fehler erneut auslöst, mit einem Verweis auf den Handlernamen und den Wert einer Variablen, die ich an verschiedenen Stellen im Handler gesetzt habe, damit ich das kann Isolieren Sie den Fehler irgendwo zwischen zwei Punkten.
** Gibt es eine Möglichkeit, Applescript dazu zu bringen, 'Apple event timed out at line 15 in await(), at line 60 in connectRemoteUser(), at line 90 in autostartTestUsers()' zu sagen, ohne alles direkt codieren zu müssen ?
Ich kann mich nicht auf die Hervorhebung des Standorts des Skripteditors verlassen, da die Fehler zeitweise auftreten, wenn das Skript nicht in Produktion ist.
Es ist hässlich, aber es funktioniert ...
try
set marker to 1
-- do stuff
set marker to 2
-- do stuff
set marker to 3
1 / 0
set marker to 4
on error errMsg number errNum
tell application "SystemUIServer"
display alert (marker & space & errMsg & return & return & "Error number " & errNum as text) buttons "Cancel" cancel button "Cancel"
end tell
end try
Rubiks Sphäre
Tim Baverstock