スクリプトがすでに実行されている場合に、再実行を許可するかどうかを決定します。
#SingleInstance ForceIgnorePromptOff
型:文字列
If omitted, it defaults to Force. それ以外の場合は、次のいずれかの単語を指定してください:
Force:ダイアログボックスをスキップして古いインスタンスを自動的に置き換えるので、Reload機能と同様の効果があります。
Ignore:ダイアログボックスをスキップして、古いインスタンスを実行したままにします。つまり、すでに実行されているスクリプトを起動しようとしても無視されます。
Prompt:古いインスタンスを維持するか、新しいインスタンスに置き換えるかを尋ねるダイアログボックスを表示します。
Off:スクリプトの複数のインスタンスの同時実行を許可します。
If this directive is unspecified in a script, it will behave as though set to Prompt.
このディレクティブは、以下のコマンドラインスイッチのいずれかが使用されている場合、無視されます。/force /restart
他のディレクティブと同様に、#SingleInstanceは条件付きで実行することはできません。
スクリプトの以前のインスタンスは、デフォルトのタイトルを持つメインウィンドウを検索することで識別されます。そのため、以下のような場合、以前のインスタンスが見つからないことがあります。
最大で1つ前のインスタンスが検出され、終了を促すメッセージが送られる。したがって、以下の追加制限も適用されます。
#SingleInstance Off
モードを使用していた場合など)、一番上にマッチしたインスタンスにメッセージが送信され、他のインスタンスは考慮されません。複数のスクリプトを同時に起動した場合、互いを検出できなかったり、すべてのインスタンスが同じ前のインスタンスをターゲットにしたりすることがあります。このため、スクリプトが複数回起動することになります。