VK_LAUNCH_MEDIA_SELECTWM_APPCOMMANDは実際にシステムによって受信され、 with lParamasに変換されAPPCOMMAND_LAUNCH_MEDIA_SELECTます。したがって、理論的には、このハンドラーを実装するプログラムはすべて起動できます。このページ(古いものではありますが) には、以下をリッスンするデフォルトのアプリケーションがリストされていますWM_APPCOMMAND。
- インターネットエクスプローラ
- Windows ヘルプ
- DVDプレーヤー
- CDプレーヤー
- メディアプレーヤー
- ボリューム コントロール システム トレイ アプレット
明らかに、実際に適用できるのはそのうちのほんの一部ですAPPCOMMAND_LAUNCH_MEDIA_SELECT。
ただし、翻訳メカニズムが実際にどのように機能するかはわかりません。WM_APPCOMMANDすべてのアプリケーションが翻訳されたメッセージを受け取るわけではないようです。私のキーボードで、送信するボタンを押してみましたVK_VOLUME_UP。ボリューム コントロール システム トレイ アプレットによって処理されるため、ボリュームは期待どおりに上がります。notepad.exeただし、 Spy++ でインスタンスを開き、そのメッセージを監視しました。フォアグラウンドにいてもメッセージを受信しませんでした。不思議なことに、フォーカスがある限り再生/一時停止ボタンが押された場合にVK_MEDIA_PLAY_PAUSE受信されます。でテストしますが、実際にはどのボタンに対応するのか (またはキーボードにあるのかどうか) はわかりません。WM_APPCOMMANDnotepad.exeVK_LAUNCH_MEDIA_SELECT