通过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_SETKEYBOARDDELAYSPI_SETKEYBOARDSPEED更改键盘设置。它会立即应用,并反映在相应的 Windows 配置对话框中。

相关内容