web-dev-qa-db-ja.com

Windowsのキーボードメディアキー-キーの押下に応答するアプリを上書きすることはできますか?

現在、Chrome( 'Streamkeys'を使用)とSpotifyの両方を開いています。Chromeが実行されていない場合、Spotifyはメディアキーに応答します(一時停止、スキップトラックなど)。ただし、Chromeが開いていてStreamkeysが実行されている場合、Streamkeysはallメディアキーのキーストロークをキャプチャします。Windowsのプログラムを判別する方法はありますか?はメディアキーのキープレスをに送信し、拡張機能を無効にしたり、クローズしたりせずに変更するのが理想的ですChrome Spotifyでメディアキーを使用するたびに?

8
Jon

ある程度の作業が必要な場合は、 AutoHotkey を試してみてください。これにより、PCで多くのことをスクリプト化して自動化できます。

私は このスタックオーバーフローの投稿 で受け入れられている回答のようなものから始めます。これは、キープレスをグローバルにインターセプトして特定のウィンドウに送信するという同様の問題を解決します。

彼らの例(以下に表示)では、Ctrl + LをキャプチャしてFirefoxに送信しています。あなたのケースでは、キャプチャしたいキーまたはキーコンボごとにスニペットのコピーをスクリプトに追加し、MozillaUIWindowClassを、キーストロークを受け取りたいアプリに変更します。また、名前やハンドルなど、宛先ウィンドウに関する必要な情報を取得するためのWindow Spyと呼ばれるユーティリティもあります。

$^l::
IfWinExist ahk_class MozillaUIWindowClass
{
    WinActivate
    Send ^l
}

または、最終的に Rich が実行されてしまうため、単にフォーカスを与えてグローバルに送信するのではなく、具体的にウィンドウにコマンドを送信する必要がある場合があります。彼の実用的なソリューションは次のようになります。

#IfWinExist ahk_class iTunes
Media_Play_Pause::ControlSend, , ^p, Windows Media Player

#IfWinExist ahk_class iTunes
Media_Next::ControlSend, , ^f, Windows Media Player

#IfWinExist ahk_class iTunes
Media_Prev::ControlSend, , ^b, Windows Media Player

AutoHotkeyスクリプトの詳細については、 ドキュメントページ を試してください。

1
Nelson Hoover

Windows 10の新しいバージョン(少なくとも私のPCではバージョン1903)には、メディアキーに応答するアプリを選択できる組み込みのトグルボタンがあります。

enter image description here

2
willnode

Chrome拡張機能リスト)の下部にキーボードショートカットリンクがあります。このリストには[設定]からアクセスできますメニューから、[その他のツール]、[拡張機能]の順に選択します。

これらの設定には、すべてのキーボードショートカットが、それらを使用する拡張機能ごとにグループ化されて一覧表示されます。すべてのショートカットには、キーボードショートカットが「グローバル」に機能するか、「Chromeのみ」で機能するかを選択できます。それが何らかの理由で機能しない場合は、Chromeからキーボードショートカットを完全に削除することもできます。

keyboard shortcuts in chrome

1
LevenTech

Disclamer!これは私の責任ではなく、Matt_Hの責任です。私はそれをspotifyフォーラムで見つけ、それがあなたを助けるかもしれないと思った。これが元のディスカッションへのリンクです: https://community.spotify.com/t5/Desktop-Windows/Keyboard-media-launch-button/td-p/1736288

私はこれと同じ問題に直面し、レジストリを変更することでなんとか解決しました。レジストリの編集には標準の免責事項があります。注意してください。正確にしないと、違反した場合に両方の要素が保持されます。

キーの動作は次のとおりです。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\16

ここで「ShellExecute」の文字列キー+値とSpotifyへのパスを作成できます。これは私がWin7でやったことです。

ただし、最適化として、SpotifyはSpotifyで処理されるスキームとして「spotify://」を登録するため、文字列キー+「Association」および「spotify」の値が機能します。

Windowsレジストリエディターバージョン5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\16] "Association" = "spotify"

0
Albin