PowerShell でキーボードのリピート速度を変更する

PowerShell でキーボードのリピート速度を変更する

私のラップトップには、休止状態から復帰した後にキーボードのリピート速度が非常に遅くなるという問題があります。コントロール パネルで速度を下げて新しい速度を適用し、その後再び速度を上げて適用することで、この問題を解決できます。ただし、毎回これを行うのは避けたいです。

繰り返し速度がレジストリ「HKCU:\Control Panel\Keyboard\KeyboardSpeed」に保存されている場所を見つけ、PowerShell で設定できます。ただし、新しい速度は適用されていないようです (つまり、繰り返し速度は値を何に設定しても影響を受けません)。速度を維持するために他に何かする必要があるはずですが、それが何なのかわかりません。記録のために、レジストリ値を設定する方法は次のとおりです。

set-itemproperty "HKCU:\Control Panel\Keyboard\" -name KeyboardSpeed -Value 3

答え1

ウェブで調べていろいろいじった後、これを作りました:

https://gist.github.com/ygoe/4c03a9a2b9485356eb56513068607001

これは実際には C# コードですが、PowerShell/CMD にパッケージ化されています。経験豊富な PowerShell コーダーであれば、おそらくプレーンな PS コードでもこれを行うことができます。

コードはネイティブSystemParametersInfoアクションと機能を組み合わせてSPI_SETKEYBOARDDELAYキーボードSPI_SETKEYBOARDSPEED設定を変更します。設定はすぐに適用され、対応する Windows 構成ダイアログにも反映されます。

関連情報