版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
版权
dos命令专栏收录该内容
3 篇文章0 订阅
订阅专栏
【问题描述】:自己的本本(宏碁Acer),以前从来没有设置过密码。昨天设置了之后,今天输入密码,怎么输都TM不对,想把本砸了。。。后来用PE把密码去了,又重新设置了一遍密码,确信密码没记错,锁定屏幕,发现输入密码进系统完全没问题。关机后,悲剧又发生了,怎么输死活进不去,这TM逗我呢?
百度了一下,原来是因为我的笔记本有小键盘的原因。笔记本因为需要考虑到便携性,在键盘的设计上下了很大功夫,相对于普通键盘变化最大的便是对小键盘的去除。厂商也考虑到了小键盘的功能,也为笔记本设计了小键盘的功能,只是让他跟我们的主键盘区进行了整合。
上图中红色菱形部位就是小键盘区,按Fn和numlk即可打开/关闭,按键就会在字母/数字间相互切换。
但不是所有的笔记本都有小键盘的功能
出现上述问题,请先看下自己电脑是否带有小键盘!!!
【为什么带小键盘的笔记本会出问题呢?】
那要问你在设置密码时,用到小键盘区时输入的到底是数字还是字母。一般而言,我们期望设置的是字母,那么在开机登录输入密码时也要输入字母才对。难道我登录时输入的还不是字母咯???的确如此,想必你已经明白了。
所以如果密码一直不对,不妨用Fn和numlk切换一下,再输入密码或者按住Fn输入密码试一下,会发现问题解决了。其实问题就出在当前小键盘是处在打开状态上。
难道我以后输入密码都要切换一下,有没有方法改变一下小键盘的初始状态。
【修改NumLock默认启动值】
在Windows系统启动时,它会从注册表下面读一个键值,然后根据这个键值的内容来决定是否启动NumLock键、CapsLK键(大小写键)、ScrLock键等。
这个键值是:InitialKeyboardIndicators
它是REG_SZ类型,内容的含义是:
0 - Turn all indicators Off (NumLock, CapsLock, ScrollLock)
1 - Turn CapsLock On
2 - Turn NumLock On
3 - Turn CapsLock and NumLock On
4 - Turn ScrollLock On
5 - Turn CapsLock and ScrollLock On
6 - Turn NumLock and ScrollLock On
7 - Turn all indicators On (NumLock, CapsLock, ScrollLock)
也就是说:设置为0 则关闭NumLock键,设置为2则开启NumLock键。但是这个键值在用户登录前和登录后读取的路径是不一样的。
用户登录前的NumLock
在登录用户前,Windows是根据HKEY_USERS\.Default\Control Panel\Keyboard 下InitialKeyboardIndicators(这个值大家在windows的开始/运行菜单中输入"regedit",打开注册表编辑器从左边可以这个值,以下同理)的内容来决定是否开启这些键值的。
注意:有些Win机器上是2147483648,即十六进制的0x80000000,最后一个位有效,即表示0的意思。
用户登录后的NumLock
在一个用户登录后,Windows是根据HKEY_CURRENT_USER\Control Panel\Keyboard 下InitialKeyboardIndicators
的内容来决定是否开启这些键值的。
注意:Windows7在关机时会自动保存当前NumLock键的状态的,也就是你自己改无效,反正关机时它会再根据NumLock键的状态覆盖你设置的内容。网上有些说改这里,楼主实测是没用。。。
用上面的方法查看一下你的电脑登录前Numlock的键值,一般情况下都为2,这就是为什么有些电脑开机登录前NumLock的灯(部分电脑有此状态灯)一直是亮的。下面就是设置NumLock的方法
解决方案: 开机打开NumLock键
1.设置 HKEY_USERS\.Default\Control Panel\Keyboard 下InitialKeyboardIndicators 为2 (--- 影响登录前状态)
2.关机前打开NumLock键(--- 影响登录后状态)
3.重启
解决方案: 开机不打开NumLock键
1.设置 HKEY_USERS\.Default\Control Panel\Keyboard 下InitialKeyboardIndicators 为0 (--- 影响登录前状态)
2.关机前关闭NumLock键(--- 影响登录后状态)
3.重启
【总结】经过以上的解释,你应该知道其中的原理了吧,那就酌情配置自己的电脑吧!原则上这里的问题出在登录前的状态,所以只需设置 HKEY_USERS\.Default\Control Panel\Keyboard 下InitialKeyboardIndicators 为0即可解决问题啦。。。