我正在尝试创建一个在注册表中更改鼠标设置的脚本。当我运行脚本时,我看到进行了更改,但除非我注销并重新登录,否则它们不会生效,这是不可行的。
:: MouseSensitivity 10
:: MouseSpeed (Set Pointer Precision) 0
:: MouseThreshold1 0
:: MouseThreshold2 0
@ECHO OFF
REG ADD "HKEY_CURRENT_USER\Control Panel\Mouse" /v MouseSensitivity /t REG_SZ /d 10 /f
REG ADD "HKEY_CURRENT_USER\Control Panel\Mouse" /v MouseSpeed /t REG_SZ /d 0 /f
REG ADD "HKEY_CURRENT_USER\Control Panel\Mouse" /v MouseThreshold1 /t REG_SZ /d 0 /f
REG ADD "HKEY_CURRENT_USER\Control Panel\Mouse" /v MouseThreshold2 /t REG_SZ /d 0 /f
ECHO Execution logged on: %DATE% at %TIME% >> test.txt
:: /* Tried this, doesn't work.
:: RUNDLL32.EXE USER32.DLL, UpdatePerUserSystemParameters
:: */
@EXIT /B 0
答案 0 :(得分:0)
scale.factor
答案 1 :(得分:0)
更改注册表值将不会应用更改。
Windows系统会在启动时读取并加载它们,而更改值不会发生这种情况。
需要调用系统API来做到这一点。
我使用了PowerShell脚本。您可以在
上找到代码https://github.com/raevilman/windows-scripts/tree/master/mouse/speed
我在那里放置了两个批处理文件。 一个用于触摸板,另一个用于USB鼠标,因为它们都以不同的速度运行。您肯定会根据需要拥有自己的版本。
PS:如果您遇到PowerShell执行策略等问题,不要问它们。谷歌吧。