Bestimmt, ob ein bereits laufendes Skript nochmals ausgeführt werden darf.
#SingleInstance ForceIgnorePromptOff
Lässt man diesen Parameter weg, wird standardmäßig Prompt verwendet. Um dieses Verhalten zu ändern, geben Sie eines der folgenden Wörter an:
Force: Überspringt das Dialogfenster und ersetzt automatisch die alte Instanz, was einen ähnlichen Effekt hat wie der Reload-Befehl.
Ignore: Überspringt das Dialogfenster und lässt die alte Instanz weiterlaufen. Das heißt, dass jegliche Versuche, ein bereits laufendes Skript zu starten, ignoriert werden.
Prompt: Zeigt ein Dialogfenster mit der Anfrage, ob die alte Instanz beibehalten oder mit einer neuen Instanz ersetzt werden soll. Dieses Verhalten ist standardmäßig aktiv, wenn diese Direktive nicht genutzt wird.
Off: Erlaubt die gleichzeitige Ausführung mehrerer Instanzen des Skripts.
Ein Skript mit Hotkeys, Hotstrings, #Persistent, OnMessage() oder Gui ist standardmäßig eine Einzelinstanz (Dialogfenster & Anfrage). Alle anderen Skripte erlauben standardmäßig mehrere Instanzen. Dieses Verhalten kann wie oben beschrieben deaktiviert oder geändert werden.
Diese Direktive wird ignoriert, wenn eine der folgenden Befehlszeilenoptionen benutzt wird: /force /f /restart /r
#SingleInstance kann wie alle anderen Direktiven nicht bedingt ausgeführt werden.
Um ältere Instanzen des Skripts zu identifizieren, wird nach einem Hauptfenster mit dem Standardtitel gesucht. Dies hat zur Folge, dass eine ältere Instanz nicht gefunden wird, wenn Folgendes zutrifft:
Es wird höchstens eine ältere Instanz erkannt und zum Schließen aufgefordert (durch Senden einer Meldung). Dies führt zu folgenden zusätzlichen Einschränkungen:
#SingleInstance Off
-Modus verwendet haben), wird nur die oberste übereinstimmende Instanz zum Schließen aufgefordert - alle anderen werden nicht berücksichtigt.Wenn mehrere Instanzen des Skripts gleichzeitig gestartet werden, kann es vorkommen, dass sie sich gegenseitig nicht erkennen oder alle auf dieselbe ältere Instanz verweisen. Dies würde dazu führen, dass mehrere Instanzen des Skripts gestartet werden.