バージョン要件を満たさないときにエラーを表示して終了します。
#Requires Requirement
"AutoHotkey"という単語で始まらないときは、エラーメッセージが表示されてプログラムは終了します。これにより、明確化が促進されるとともに、将来の使用のためにディレクティブが予約されます。AutoHotkeyの他のフォークでは、他の名前をサポートしている場合があります。
そうでないときは、"AutoHotkey"という単語の後にスペースまたはタブで区切られた以下の任意の組み合わせが続く必要があります:
<
,<=
,>
,>=
,=
のいずれかに、オプションの文字 "v" とバージョン番号がすぐに続きます。例えば、>=2-rc <2
はv2のリリース候補を許可するが、最終リリースは許可しない。表示されるメッセージは、ディレクティブを解釈しているAutoHotkeyのバージョンに依存します。
v2の場合、エラーメッセージにAutoHotkeyのパス、バージョン、ビルドが必ず表示されます。
このディレクティブをサポートしていないバージョンのAutoHotkeyでスクリプトを起動した場合、以下のようなエラーメッセージが表示されます:
Line Text: #Requires %Requirement% Error: This line does not contain a recognized action.
スクリプトが以前のバージョンでは利用できない構文や関数を使用している場合、このディレクティブを使用すると、エラーメッセージが任意の構文エラーを示すのではなく、満たされていない要件を示すことを保証します。これは、if (A_AhkVersion <= "1.1.33")
のように、スクリプト内の他の場所で構文エラーが発生すると実行できなくなるため、実行できません。
スクリプトを共有したり、コードをオンラインに投稿する場合、このディレクティブを使用すると、コードを見つけた人が、どのバージョンのAutoHotkeyを対象としているかを容易に特定することができます。
他のプログラムやスクリプトは、さまざまな目的でこのディレクティブを確認することができます。例えば、AutoHotkey v2と共にインストールされたランチャーは、どのAutoHotkey実行ファイルを起動するかを決定するために使用し、スクリプトエディターや関連ツールは、スクリプトファイルの解釈やハイライトの方法を決定するために使用するかもしれません。
バージョン文字列は、ドットで区切られた一連のコンポーネントとして比較され、オプションでハイフンとプレリリース識別子が続く。
#Requires AutoHotkey v2
のスクリプトは、v2.0-a112では実行されません。プレリリース版を許可する場合は、ハイフン(-)を付けてください。事例:v2.0-
。末尾の "+"は、後のバージョンでもよいことを読者に示すのに十分ですが、必須ではありません。
他のディレクティブと同様に、#Requiresは条件付きで実行することはできません。