以下の AutoHotkey 用スクリプトを実行中に、[Alt} + [F4] を押し下げてみよう。この処理の終わりで、なぜか [Ctrl] が押されてしまうのだ。KeyHistory を確認してほしい。
~*F4:: Return
KeyHistory に残っているログは以下のとおりだ。見やすいように表形式で掲載しよう。 [左Alt] + [F4] と [右Alt] + [F4]の順に並べる。
A4 | 038 | d | 5.91 | Alt | |
73 | 03E | h | d | 0.16 | F4 |
73 | 03E | u | 0.13 | F4 | |
A4 | 038 | u | 0.17 | Alt | |
A2 | 01D | i | d | 0.00 | Ctrl |
A2 | 01D | i | u | 0.00 | Ctrl |
A5 | 138 | d | 7.83 | Right Alt | |
A5 | 138 | d | 0.25 | Right Alt | |
73 | 03E | h | d | 0.00 | F4 |
73 | 03E | u | 0.12 | F4 | |
A5 | 138 | u | 0.14 | Right Alt | |
A2 | 01D | i | d | 0.00 | Ctrl |
A2 | 01D | i | u | 0.00 | Ctrl |
仮想的に、[Ctrl] が押し下げられ、続けて押し上げられたわけだ。この処理に要した時間は0.00秒である。[Ctrl] の状態を取得するプログラムを使用しているならば、この不要な [Ctrl] のストロークを取得してしまうかもしれない。
~ を使用せずに Hotkey を設定することだけが、有効な対策手法かな。