笔者的电脑某日发生了一个不大不小的案情。案发经过是这样子的:笔者新买了一个摄像头,按部就班地安装摄像头的驱动程序,当安装快完成时系统却提示失败,然后Windows就蓝屏。重启计算机后也无法成功安装驱动。询问了客服技术人员,被告知需要手工删除驱动程序文件和注册表键值。可是在删除一个注册表键值项时,系统出现了无法删除的提示(如图1)。
破案开始,笔者的操作系统为Windows 2000 server SP4,文件系统为NTFS。按常规原理思考无法删除注册表的原因,应该是当时关联到了某个程序,于是切换到安全模式下,没想到仍然无法删除。尝试了几个第三方注册表工具,也是无济于事。最后,笔者考虑是否由于注册表权限问题导致无法删除。
要设置注册表修改权限,在我们熟悉的注册表编辑器regedit中是无法实现的,这需要用到Windows中隐藏的另外一个注册表编辑器regedt32.exe。
在“运行”框中输入regedt32,即可打开regedt32的主界面。光从此界面来看,和“遥远”的Win 3.x时代的文件管理器file manager非常的类似。在主界面中找到自己要删除的键值项,然后依次点击菜单栏上的“安全→权限”,在弹出的“权限”对话框中便可以设置各个用户对该键值项的操作权限了(如图2)。由于笔者的目的是要删除此键值项,因此赋予了登录用户所有的权限。点击“确定”按钮即可返回regedt32主界面了。此时再次找到要删除的键值项,按下键盘上的Del键,终于没有再弹出那恼人的警示框了,删除任务顺利完成。