autohotkey_v2 @ ウィキ
プログラムの使い方 00
最終更新:
Bot(ページ名リンク)
-
view
AutoHotkey はそれ自体では何もしません。何をすべきかを伝えるスクリプトが必要です。スクリプトは、構成ファイルのように、プログラムの指示を含むファイル名拡張子が付いた単純なプレーン テキスト ファイルですが、はるかに強力です。スクリプトは、単一のアクションを実行して終了する程度のことしかできませんが、ほとんどのスクリプトでは、ホットキーが押されたときに実行する 1 つ以上のアクションが各ホットキーの後に続く、多数のホットキーを定義します。
#z::Run "https://www.autohotkey.com" ; Win+Z ^!n:: ; Ctrl+Alt+N { if WinExist("Untitled - Notepad") WinActivate else Run "Notepad" }
ヒント:ブラウザーがサポートしている場合は、コード ブロックの上にマウスを移動すると、コード ブロックの右上に表示されるボタンをクリックして、任意のコード ブロック (上のコードなど) をスクリプト ファイルとしてダウンロードできます。
目次
- スクリプトを作成する
- スクリプトを編集する
- スクリプトを実行する
- トレイのアイコン
- メインウィンドウ
- 埋め込みスクリプト
- コマンドラインの使用法
- AutoHotkey.exe の移植性
- ランチャー
- ダッシュ
- 新しいスクリプト
- インストール
- UI アクセスで実行
スクリプトを作成する
スクリプト ファイルを作成するには、いくつかの一般的な方法があります。
- メモ帳 (または選択したテキスト エディター) で、ファイル名拡張子を付けてファイルを保存します。一部のシステムでは、エディターが別の拡張子 (.txt など) を追加しないように、名前を引用符で囲む必要がある場合があります。 .ahk
>ASCII 以外の文字が含まれる場合は、BOM 付きの UTF-8 としてファイルを保存してください。詳しくはFAQ をご覧ください。}
- エクスプローラーで、スクリプトを保存するフォルダーの空のスペースを右クリックし、[新規] と[AutoHotkey スクリプト]を選択します。その後、スクリプトの名前を入力できます (拡張子が表示されている場合は削除しないように注意してください)。.ahk
- ダッシュで[新しいスクリプト]を選択し、スクリプトの名前 (拡張子を除く) を入力して、[作成] または[編集]をクリックします。スクリプトの作成に使用されるテンプレートと保存場所は、このウィンドウ内で構成でき、必要に応じてデフォルトとして設定できます。.ahk
スクリプトの書き方の詳細については、スクリプト言語を参照してください。
スクリプトを編集する
スクリプトを開いて編集するには、スクリプト ファイルを右クリックし、[スクリプトの編集]を選択します。スクリプトがすでに実行されている場合は、[編集]機能を使用するか、スクリプトのトレイ アイコンを右クリックして[スクリプトの編集]を選択します。デフォルトのエディターをまだ選択していない場合は、いずれかを選択するように求められます。それ以外の場合は、ダッシュのエディター設定でデフォルトのエディターを変更できます。もちろん、最初にテキスト エディタを開いてから、他のテキスト ファイルと同じようにスクリプトを開くこともできます。
スクリプトを編集した後、変更を有効にするには、スクリプトを実行またはリロードする必要があります。実行中のスクリプトは通常、トレイ メニューから再ロードできます。
スクリプトを実行する
AutoHotkey をインストールすると、スクリプトを実行する方法がいくつかあります。
エクスプローラーでスクリプト ファイル (またはスクリプト ファイルへのショートカット) をダブルクリックします。
コマンド ラインで AutoHotkey.exe を呼び出し、スクリプトのファイル名をコマンド ライン パラメータとして渡します。
デフォルトのスクリプトを作成したら、[スタート] メニューのショートカットから AutoHotkey を起動して実行します。
AutoHotkey が Windows 7 以降のタスクバーまたは [スタート] メニューに固定されている場合、最近または固定されたスクリプトをプログラムのジャンプ リストから起動できます。
ほとんどのスクリプトは、実行中にのみ効果があります。スクリプトを終了するには、トレイ メニューまたはExitApp関数を使用します。Windows のシャットダウン時にも、スクリプトは強制的に終了されます。ユーザーのログイン後にスクリプトが自動的に開始されるように構成するには、スクリプト ファイルへのショートカットをStartupフォルダーに配置するのが最も簡単な方法です。
コマンド ラインで AutoHotkey.exe を呼び出し、スクリプトのファイル名をコマンド ライン パラメータとして渡します。
デフォルトのスクリプトを作成したら、[スタート] メニューのショートカットから AutoHotkey を起動して実行します。
AutoHotkey が Windows 7 以降のタスクバーまたは [スタート] メニューに固定されている場合、最近または固定されたスクリプトをプログラムのジャンプ リストから起動できます。
ほとんどのスクリプトは、実行中にのみ効果があります。スクリプトを終了するには、トレイ メニューまたはExitApp関数を使用します。Windows のシャットダウン時にも、スクリプトは強制的に終了されます。ユーザーのログイン後にスクリプトが自動的に開始されるように構成するには、スクリプト ファイルへのショートカットをStartupフォルダーに配置するのが最も簡単な方法です。
スクリプトもコンパイルできます。つまり、AutoHotkey バイナリ ファイルと組み合わせて、自己完結型の実行可能 (.exe) ファイルを形成します。
トレイのアイコン
既定では、各スクリプトは独自のアイコンをタスク バーの通知領域 (一般にトレイとして知られています) に追加します。
通常、トレイ アイコンは次のようになります (ただし、スクリプトが一時停止または中断されると、色または文字が変わります)。H
トレイ アイコンを右クリックしてトレイ メニューを表示します。デフォルトでは、次のオプションがあります。
開く - スクリプトのメイン ウィンドウを開きます。
ヘルプ - AutoHotkey オフライン ヘルプ ファイルを開きます。
Window Spy - ウィンドウに関するさまざまな情報を表示します。
スクリプトの再ロード - 「再ロード」を参照してください。
スクリプトの編集 -編集 を参照してください。
ホットキーの一時停止 -ホットキーを一時停止または一時停止解除します。
スクリプトの一時停止 -スクリプトを一時停止または再開します。
終了 - スクリプトを終了します。
デフォルトでは、トレイ アイコンをダブルクリックすると、スクリプトのメイン ウィンドウが表示されます。
ヘルプ - AutoHotkey オフライン ヘルプ ファイルを開きます。
Window Spy - ウィンドウに関するさまざまな情報を表示します。
スクリプトの再ロード - 「再ロード」を参照してください。
スクリプトの編集 -編集 を参照してください。
ホットキーの一時停止 -ホットキーを一時停止または一時停止解除します。
スクリプトの一時停止 -スクリプトを一時停止または再開します。
終了 - スクリプトを終了します。
デフォルトでは、トレイ アイコンをダブルクリックすると、スクリプトのメイン ウィンドウが表示されます。
トレイ アイコンとメニューの動作と外観はカスタマイズできます。
A_TrayMenu は、トレイ メニューのカスタマイズに使用できるMenu オブジェクトを返します。
A_IconHiddenまたは#NoTrayIconディレクティブを使用して、トレイ アイコンを非表示 (または表示) にできます。
A_IconTip には、トレイ アイコンの新しいツールヒント テキストを割り当てることができます。
TraySetIcon を使用してアイコンを変更できます。
A_IconHiddenまたは#NoTrayIconディレクティブを使用して、トレイ アイコンを非表示 (または表示) にできます。
A_IconTip には、トレイ アイコンの新しいツールヒント テキストを割り当てることができます。
TraySetIcon を使用してアイコンを変更できます。
メインウィンドウ
スクリプトのメイン ウィンドウは通常は非表示になっていますが、トレイ アイコンまたは以下に示す機能のいずれかを使用して表示し、スクリプトのデバッグに役立つ情報にアクセスできます。[表示]メニューの項目は、メイン ウィンドウの表示内容を制御します。
- 最近実行された行 - ListLines を参照してください。
- 変数とその内容 - ListVarsを参照してください。
- ホットキーとそのメソッド - ListHotkeysを参照してください。
- キー履歴とスクリプト情報 - KeyHistoryを参照してください。
- 既知の問題:スクリプトがメッセージ ボックスまたはその他のダイアログを表示している間は、メニュー項目のキーボード ショートカットは機能しません。
組み込み変数A_ScriptHwndには、スクリプトのメイン ウィンドウの一意の ID (HWND) が含まれています。
このウィンドウをWinCloseで(別のスクリプトからでも) 閉じると、スクリプトは終了しますが、他のほとんどの方法では、ウィンドウを非表示にしてスクリプトを実行したままにします。
メイン ウィンドウを最小化すると、自動的に非表示になります。これは、所有するウィンドウ (GUI ウィンドウや特定のダイアログ ウィンドウなど) が自動的に最小化されるのを防ぐために行われますが、メイン ウィンドウのタスクバー ボタンを非表示にする効果もあります。代わりに、メイン ウィンドウを通常どおり最小化できるようにするには、デフォルトの処理をOnMessageでオーバーライドします。例えば:
; This prevents the main window from hiding on minimize: OnMessage 0x0112, PreventAutoMinimize ; WM_SYSCOMMAND = 0x0112 OnMessage 0x0005, PreventAutoMinimize ; WM_SIZE = 0x0005 ; This prevents owned GUI windows (but not dialogs) from automatically minimizing: OnMessage 0x0018, PreventAutoMinimize Persistent PreventAutoMinimize(wParam, lParam, uMsg, hwnd) { if (uMsg = 0x0112 && wParam = 0xF020 && hwnd = A_ScriptHwnd) { ; SC_MINIMIZE = 0xF020 WinMinimize return 0 ; Prevent main window from hiding. } if (uMsg = 0x0005 && wParam = 1 && hwnd = A_ScriptHwnd) ; SIZE_MINIMIZED = 1 return 0 ; Prevent main window from hiding. if (uMsg = 0x0018 && lParam = 1) ; SW_PARENTCLOSING = 1 return 0 ; Prevent owned window from minimizing. }
メイン ウィンドウのタイトル
スクリプトのメイン ウィンドウのタイトルは、#SingleInstanceおよびReloadメカニズムによって使用され、同じスクリプトの他のインスタンスを識別します。タイトルを変更すると、スクリプトがそのように識別されなくなります。デフォルトのタイトルは、スクリプトのロード方法によって異なります。
Loaded From | Title Expression | Example |
---|---|---|
.ahk file | A_ScriptFullPath " - AutoHotkey v" A_AhkVersion |
E:\My Script.ahk - AutoHotkey v1.1.33.09 |
Main resource (compiled script) | A_ScriptFullPath |
E:\My Script.exe |
Any other resource | A_ScriptFullPath " - " A_LineFile |
E:\My AutoHotkey.exe - *BUILTIN-TOOL.AHK |
次のコードは、デフォルトのタイトルをスクリプト自体で決定する方法を示しています(ただし、実際のタイトルはWinGetTitleで取得できます)。
{{{{{{{{
<pre style="background-color:#F0F0F0;">
title := A_ScriptFullPath
if !A_IsCompiled
<pre style="background-color:#F0F0F0;">
title := A_ScriptFullPath
if !A_IsCompiled
title .= " - AutoHotkey v" A_AhkVersion
; For the correct result, this must be evaluated by the resource being executed,
; not an #include (unless the #include was merged into the script by Ahk2Exe):
else if SubStr(A_LineFile, 1, 1) = "*" && A_LineFile != "*#1"
; not an #include (unless the #include was merged into the script by Ahk2Exe):
else if SubStr(A_LineFile, 1, 1) = "*" && A_LineFile != "*#1"
title .= " - " A_LineFile
}</pre>
}}}}}}}
}}}}}}}