Windows Info

Windowsで利用可能なホットキーを探す (2/2)

文●塩田紳二 編集● ASCII

2023年03月19日 10時00分

前へ 1 2 次へ

ホットキーの空きを調べる

 Windowsにはホットキーを表示する機能はないが、調べることができないのかというとそうではなく、プログラムを作れば、「RegisterHotKey」関数で割り当てたホットキーを調べることは可能だ。

 キーの組み合わせをRegisterHotKey関数で登録しようとしたとき、すでに割り当てられている組み合わせは、エラーになって登録できない。これからすでに使われている組み合わせを知ることができる。

 ただ、キーボードフックやメッセージを使う方法は、検出が困難だ。アプリケーションのコードを調べればわかるのだが、基本的には困難で事実上調べることはできない。残された方法は、プログラムひとつひとつでホットキーが有効化どうかを確かめる方法である。

 インターネット検索するとホットキーを調べるツールがいくつか見つかる。筆者も自作のプログラム用にPowerShellで空いているホットキーの組み合わせを探すプログラムを作った。プログラム自体には、あまり興味が持てないだろうから、リストを掲載するのはやめてGitHubに上げておいた。

●ShinjiShioda/SerchWindowsHotkey: PowerShell Search Windows Hotkey program
 https://github.com/ShinjiShioda/SerchWindowsHotkey

 また、上記のリポジトリに、作成したプログラムで出力したCSVファイルとそれを取り込んだExcelファイルも置いてある。

ホットキーの割り当て状態

 以下の表は、Windows 11 Ver.22H2で機能キーを使うホットキーの割り当て状態である。機能キーは、Winキーあり/なしの組み合わせがホットキーに使われている。ただし、修飾キーにWinキーを含まない組み合わせはごく少数である。また、「Win+Alt+Ctrl」を修飾キーに持つ組み合わせは定義されていないようだ。ファンクションキーのF14以降にホットキーの割り当てが多数あるが、検証はできなかった。F12までしかないキーボードでは、「Shift+F1~F12」が「F13~F24」になるとされているが、この方法では、F13~F24に割り当てられたホットキーを押すことはできないようだ。これについては別途調べてみたい。

 文字/数字/記号を使うホットキーは、修飾キーにWinキーを含むものだけが定義されており、Winキーを含まない組み合わせは、ホットキーとしては定義されていなかった。これは、そもそも文字数字キーは、アクセラレータでの利用が想定されているからだろう。

 ホットキーは原則は文字ではなく、キーに対して定義する。Windowsでは、さまざまな配列のキーボードを使うため、記号類に対応したキーには特殊な仮想キーコードが割り当てられており、特定の配列に依存しないようになっている。日本語用の109キーボードの場合の記号キーの割り当てを以下の表に示す。

 ホットキーを使って、さまざまな機能をキーだけで実行できるユーティリティなどもあり、ホットキーで作業効率などを改善できる。残念ながら、すべてのホットキーを調べることはできないが、少なくともWindowsが利用しているホットキーがわかれば、これを避けて割り当てをすることが可能だ。

前へ 1 2 次へ

mobileASCII.jp TOPページへ