我想使用任务计划程序(我使用的是 Windows 8.1)在将键盘插入笔记本电脑时自动打开数字锁。
由于某种原因,每次我锁定屏幕或关闭/打开笔记本电脑时,我的笔记本电脑都会默认关闭数字锁定。这非常烦人,因为我经常使用右侧数字键,而且我通常都会插入键盘。
答案1
我对此的看法略有不同,我有一台华硕笔记本电脑,每次重启时数字锁定都会打开(这是一台 14 英寸笔记本电脑,因此没有单独的数字键盘,这意味着一半的键盘默认输入数字,这非常烦人)。我尝试了所有注册表修复,关闭快速启动,在跳跃时抓住兔子的脚,在按住 fn 和 C 的同时牺牲一只山羊,但都不起作用。最后我编写了一个脚本,由启动和登录时运行的计划任务启动,如果检测到数字锁定已打开,则将其关闭。
脚本如下。它似乎只有在登录后才有效,但我懒得去弄清楚为什么,因为我已经花了几个小时在这上面,而且它对我来说已经足够了。
if([console]::NumberLock) {
$w = New-Object -ComObject WScript.Shell;
$w.SendKeys('{NUMLOCK}');
}
if you want to do the reverse, use
if(-not [console]::NumberLock){
$w = New-Object -ComObject WScript.Shell;
$w.SendKeys('{NUMLOCK}');
}
我还从同一任务启动注册表文件来设置注册表中的值,因为它们每次都会被覆盖。我认为这实际上并没有实现很多,但是既然我已经拥有它,我想我无论如何都会运行它。你的 S 号码可能与我的不同,所以请确保你更改它。
Windows 注册表编辑器版本 5.00
[HKEY_CURRENT_USER\Control Panel\Keyboard]
“InitialKeyboardIndicators”=“2147483648”
[HKEY_USERS\.DEFAULT\Control Panel\Keyboard]
“InitialKeyboardIndicators”=“2147483648”
[HKEY_USERS\S-1-5-18\Control Panel\Keyboard]
“InitialKeyboardIndicators”=“2147483648”
[HKEY_USERS\S-1-5-21-1658153221-431003928-1463442403-1002\Control Panel\Keyboard]
"InitialKeyboardIndicators"="2147483648"
我从这里获得了 powershell 脚本的代码:
https://stackoverflow.com/questions/41234687/how-to-check-if-numlock-is-enabled
答案2
您可以尝试修改这个注册表项:初始键盘指示器
有些 BIOS 还提供了在启动时更改默认 NumLock 状态的选项,因此您可以尝试检查您的 BIOS。通常 BIOS 在从睡眠状态唤醒后会恢复以前的 NumLock 状态,但您的 BIOS 可能会恢复默认状态(NumLock 关闭)。