情報科学屋さんを目指す人のメモ

方法・手順・解説を書き残すブログ。私と同じことを繰り返さずに済むように。

AutoHotkey:Windows 8.1 で SendPlay が動かないときの対策メモ

AutoHotkey (17) Windows 8.1 (58)

前回、OS再インストール後に、ホットキーが動かず、どうやら「SendPlay」によるキー送信が動作していないことが原因である、と判断し、「SendInput」方式を使用するように変更しました。しかし、そもそも「SendPlay」を使用していたのには、キーが押しっぱなしになったり、AutoHotkeyをすり抜けて意図しないショートカットが暴発しないようにする意図がありました。なので、「SendInput」に変更することで、その問題が盛大に再発することになりました。そこで今回、SendPlayを使ったままでいい、他の対策を発見した(思い出した)ので、紹介します。

EnableUIAccessスクリプトを使用して、AutoHotkey.exeを変換する

まず、Forumの「Download」ボタンから、EnableUIAccess.zipをダウンロードして、EnableUIAccess.ahkを起動してください。この.ahkスクリプトは、AutoHotkey.exeを変換するためのスクリプトです(この時点で私は、AutoHotkeyを利用するためにUIC、つまりユーザーアカウント制御を無効化しています。必要な設定かはわかりませんが、参考にしてください)

起動すると、最初に警告文が出て、まず変換元のAutoHoeky.exeを選択する画面になります。通常、最初に表示されたままでOKです。

続いて変換後のAutoHotkey.exeの保存先を設定するのですが、これもそのまま、つまり先ほどと同じAutoHotkey.exeを指定して、上書きすることにします。

すると、AutoHotkey.exeが変更され、SendPlayが使える状態になります。

AutoHotkeyを再起動

あとは、AutoHotkeyを再起動するだけです。よくわからなければ、Windowsごと再起動してみてください。

SendPlayが使える

私の場合は、これで無事SendPlayが使えるようになり、押しっぱなし病を回避できるようになりました。

そういえば前にやってた

ここで思い出したのですが、そういえば以前もEnableUIAccessスクリプトを使っていました。すっかり忘れていました。

変換後のAutoHotkey.exeは、変換したPC専用

ちなみに、変換後のAutoHotkey.exeは、変換に使用したPC専用だったと記憶しています。

なので、今後別のPCでもAutoHotkeyを使うのであれば、PCごとに、この作業をするようにしてください。

AutoHotkeyバージョン

今回使用したのは、AutoHotkey_Lの最新版 v1.1.21.02 です。それでもEnableUIAccessスクリプトは、以前使用したものがそのまま利用できました。

コメント(0)

新しいコメントを投稿