Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Entwickler>AppleScript: Wie stoppt/ beendet man vorzeitig ein Script?

AppleScript: Wie stoppt/ beendet man vorzeitig ein Script?

bald08.10.0413:44
Ich möchte ein Script als Ordneraktion einem Ordner anhängen.
Wenn nun etwas in diesen Ordner gelegt wird, startet das Script. Es erscheint ein Dialog, in dem mittgeteilt wird, das nun das Script ausgeführt wird:

An dieser Stelle soll es möglich sein auf einen "Abbrechen"-Button zu klicken, was bewirkt, dass das Script nicht weiter ausgeführt wird...

Doch wie geht das? Daran beiß ich mir gerad die Zähne aus... Hat jemand einen Tip?

mich interessiert dabei nur der Befehl um das Script am "Weitermachen" zu hindern...
0

Kommentare

DBertelsbeck
DBertelsbeck08.10.0414:09
Standarmäßig bringt der display dialog zwei Buttons:
Cancel und ok
Drück auf cancel und das Script wird abgebrochen !
0
Dirk Einecke16.10.0410:20
Hi.

Ein Grundgerüst für sowas schaut so aus:

display dialog "Soll die Ordneraktion durchgeführt werden?" buttons ¬
{"Abbrechen", "OK"} default button 2
if the button returned of the result is "OK" then
-- Die Ordneraktion wird ausgeführt.
end if
0
bald16.10.0412:17
Dirk Einecke

Danke erstmal, der Tip von DBertelsbeck war in meinem Fall schon ausreichend...

Bei Deinem Vorschlag wird beim Drücken auf "Abbrechen" ja quasi nur der Dialog abgebrochen (bzw hat keine Funktion) und nicht der Fortlauf des Scriptes... (oder?)

Mich würde interessieren, was man machen müsste wenn man einen Dialog hat, bei dem 3 Antworten möglich sind und einer davon das Script am fortfahren hindern soll... nur "Abbrechen" zu schreiben reicht ja nicht...

...aber ich lass mich da auch gerne eines Besseren belehren
0
Dirk Einecke16.10.0413:03
Hi.

In folgendem Beispiel bricht "Abbrechen" das Script ab und "Weiter 1" und "Weiter 2" macht auch weiter

display dialog "Wollen Sie die Ordneraktion durchführen?" buttons ¬
{"Abbrechen", "Weiter 1", "Weiter 2"} default button 3
if the button returned of the result is "Abbrechen" then
-- Hier steht das, was passieren soll,¬
-- wenn abgebrochen wird.
else
-- Hier passiert nun etwas, wenn man "Weiter 1" ODER "Weiter 2" drückt.
end if
0
bald16.10.0414:58
Danke Dirk Einecke,

ich fürchte, Du hast mein Anliegen nicht ganz verstanden...

"...if the button returned of the result is "Abbrechen" then
-- Hier steht das, was passieren soll,¬
-- wenn abgebrochen wird
..."

Es geht doch darum, WAS passieren muss, also wie es scriptmäßig aussehen muss, DASS das Script abbricht!
also das, was Du als "-- Hier steht das, was passieren soll," geschrieben hast...

Trotzdem Danke für Deine Bemühungen
0
Dirk Einecke16.10.0419:27
Hi.

bald
Es geht doch darum, WAS passieren muss, also wie es scriptmäßig aussehen muss, DASS das Script abbricht!
also das, was Du als "-- Hier steht das, was passieren soll," geschrieben hast...

Mh ... verstehe ich nicht so ganz. Das Script (also die Ordneraktion) ist doch im Prinzip in das Grundgerüst "if ... else ... end if" eingefasst. Die eigentliche ordneraktion läuft doch im o.g. Beispiel nur dann los, wenn man "Weiter 1" bzw. "Weiter 2" klickt. Bei "Abbrechen" bricht das Script logieschweise ab. Ich verstehe nicht ganz, was du uns mit "also wie es scriptmäßig aussehen muss, DASS das Script abbricht" sagen möchtest. Ich glaube, dass wir der Sache nur etwas näher kommen, wenn du event. mal etwas "Pseudocode" hier postest wie du es dir vorstellen würdest.

Herzlichst
dirk einecke
0
Oli
Oli16.10.0419:59
Schreib doch einfach mal "quit me"! Das beendet das Script, und gut is.
0
bald16.10.0420:30
Oli

ja, das hatte ich auch schon mal probiert... hat generell auch geklappt,
ABER: "quit me" beendete nicht nur das Script an sich, sondern deaktivierte auch gleichzeitig "FolderAction" beim Ordner
0
Oli
Oli16.10.0421:09
Oha. Man lernt nie aus .... und ich dachte, es sei so einfach
Ohne es jetzt ausprobiert zu haben, vielleicht gibt es ja was in der Art "quit me without deactivating folder action" ... bei AS funktionieren solch auf Verdacht dahergeschriebene Sätze tatsächlich manchmal. Aber es könnte natürlich auch sein, dass so eine "Folder Action" ein Script ist, das quasi permanent läuft (im Wartestand, sozusagen), und gar nicht beendet werden soll. Du merkst schon: Ich rate nur mal ein wenig. Vielleicht hilft es dir ja bei der Suche trotzdem weiter.
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.