• Es ist bereits Apfeltalk-Tradition und wir möchten sie auch in diesem Jahr fortsetzen: Unser Apfeltalk-Weihnachtslogo-Wettbewerb hat begonnen! Gestaltet für uns das Weihnachtsbanner, das im Monat Dezember bis zum Weihnachtsfest unsere Webseite schmücken soll. Lasst Eurer Kreativität freien Lauf! Hier geht es zum Wettbewerb --> Klick
  • November - das bedeutet oftmals Herbstblues, grauer Himmel, Tristesse und Wetter, bei dem man gern im Warmen bleibt. Aber nur oftmals! Wir fordern Euch gern auf, gegen den Herbstblues anzukämpfen und hoffen, dabei hilft Euch unser aktuelles Monatsthema. Neugierig geworden? --> Zum Mitmachen bitte hier klicken

[AppleScript] tell application to open - dabei auf Dialogbox reagieren (speichern ja/nein)

sdamn

Erdapfel
Registriert
30.12.18
Beiträge
1
Hallo zusammen,
ich hoffe, hier kann mir jemand weiterhelfen.
Ich habe folgende Aufgabenstellung:

über ein externes Signal (Midi ControlChange, ist aber Nebensache da schon gelöst) soll einem Programm gesagt werden, dass innerhalb des Programms eine neue Datei geladen werden soll.

Die externe Ansteuerung erledige ich über MidiPipe, aber mit dem Programmaufruf habe ich so meine Schwierigkeiten, denn wenn ich folgenden Befehl aufrufe,
tell application "Ableton Live 10 Intro" to open "/Users/...beispieldatei"

kommt eine Dialogbox, die fragt, ob das aktuelle Set gespeichert werden soll..
Das müsste eigentlich nur mit Taste n (Keystroke...) bestätigt werden.
Mein Problem ist aber, dass mein komplettes Script an genau dieser Stelle (tell application "Ableton Live 10 Intro" to open "/Users/...beispieldatei") hängt und die Arbeit verweigert, weil auf die Dialogbox reagiert werden muss.

Ich bin hier am verzweifeln ;-) mir fehlen hier offensichtlich einige Grundkenntnisse.

Ich habe folgende Lösungsansätze:

1.
Ich suche einen Befehl der in etwa so lautet:
tell application "Ableton Live 10 Intro" to open "/Users/...beispieldatei" und wenn dabei die Dialogbox aufläuft, bestätige mit "n"

2.
zweites script läuft parallel und guckt immer, ob so eine Dialogbox aufpoppt und bestätigt diese dann mit Taste "n"
Ansatz: (hier fehlt mir noch die Endlosschleife, hat einer eine Idee ??)

tell application "System Events"
if exists (window 2 of application process "Live") then
tell
window 2 of application "Ableton Live 10 Intro" to activate
tell
application "Ableton Live 10 Intro"

reopen
activate

end tell
tell
application "System Events" to keystroke "n"
end if
end
tell
end
if
end
runme

3.
irgendwie eine Timeoutüberachung...
Hatte ich aus realisiert, aber dann wird das script komplett abgebrochen.

with timeout of 1 second
end timeout

Hier müsste die Aktion keystrone "n" ausgeführt, wenn Timeout "true" ist

 
Scheinbar öffnet Ableton eine leere Datei beim starten. Kann man das in den Einstellungen unterbinden? Ich kenne halt die API von Ableton nicht. Aber vielleicht lässt sich die Datei mit:
Code:
close window 1 without save
oder
Code:
close Document 1 without save
schliessen.
Hängt alles von der Ableton API ab.