对计算机系统进行维护,是我们经常要做的一项基本工作。目前很多维护工作都有相应的软件工具,但是更多的“杂”事却只能依靠维护人员的经验。这里根据笔者的一些维护经验,介绍几个利用注册表来进行系统维护的方法,希望能有助于读者的工作。这里要特别强调一点:在处理注册表前,一定要先备份注册表!
用修改注册表的方法来解决中文Win 95中汉字显示乱码
笔者曾遇到过这样的问题: 在Win 95的操作桌面上汉字能正常显示,但进入应用程序后,一些汉字就成了乱码。笔者曾试图用中文之星来解决这一问题,但未能成功。后来通过与一台能正常显示汉字的计算机中的Win 95对照,“控制面板”中的“字体”一项下显示出的字体没有不同,因此产生了一种猜测:其差别可能出现在注册表中,并使用以下方法对注册表进行修改:
调用Windows目录下的注册表编辑器 (Regedit. exe),层层展开我的电脑/HKEY_ LOCAL_MACHINE/System/CurrentrolSet/Control/fontassoc发现该机上只有Associated DefaultFonts子关键字,其下也只有默认值和AssocSystemFont两个入口值,没有Associated CharSet子关键字。通过“注册表编辑器”菜单编缉/新建/主键,来增加Associated CharSet子关键字。用鼠标点取Associated DefaultFonts关键字,选取菜单中的编辑/新建/串值, 则编辑器右边出现输入框,在此框中输入FontPackageDontCare, 再在其前面的图标上双击,出现“编辑字符串”对话框,在键值栏中输入宋体,按确定即可。用同样的方法加入以下几行:
FontPackageRoman=宋体
FontPackageSwiss=宋体
FontPackageModern=宋体
FontPackageScript=宋体
FontPackageDecorative=宋体
点取Associated CharSet关键字,选取编辑/新建/串值,按以上方法加入以下几行:
ANSI(00)=yes
OEM(FF)=yes
GB2312(86)=yes
SYMBOL(02)=no
(上面等式的左边为键值名,右为键值)。
做完上述修改后,关闭注册表编辑器,重新启动计算机,发现一切正常。
处理无法卸掉的应用程序
我们有时会碰到这样的情况: 在控制面板的“添加/删除应用程序”中卸载某个应用程序之后,却发现该程序还是在列表中。这时可用下述方法将其从列表中删去:
打开注册表编辑器, 进入目录“HKEY_LOCAL_MAC HINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall”,根据所列出的注册文件删去与该应用对应的项即可。
修改“长文件名的命名准则”
Win 95支持长文件名,它会为每个长文件名自动生成一个古老的8.3格式的短文件名。当长文件名超过了8个字母时,短文件名就会出现一个波浪号加上一个数字(这就是数字尾巴)。数字尾巴的作用是区分前8个字母相同的长文件名,但当某个长文件名的前8个字母唯一时,Win 95也会给短文件名后面加上数字尾巴,这在逻辑上给人一种“多余” 的感觉。其实这种“规则”也是可以改变的:在注册表编辑器中打开HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\FileSystem后, 给FileSystem新建一个Binary Value,命名为“NameNumericTail”,设定其值为0。重新启动机器后,Win 95就会使(DOS下的)文件名尽可能接近长名,易于区别,又绝不相同。
整理“添加/删除应用程序”中的程序列表
如果您用手工方式直接删除了一个(些)应用程序(即只删除了其主文件夹),该程序的名称仍然会保留在 “添加/删除程序”应用程序对话框的列表框中,如何删除这些多余的条目呢?
只能用修改注册表文件的办法来完成这项工作:打开注册表编辑器后, 选择HKEY_LOCAL_MACHINE\SOFTWARE\ Microsoft\Windows\CurrentVersion\Uninstall文件夹;在该文件夹下,有很多子文件夹,每个子文件夹对应一个应用程序(子文件夹包含着对应的应用程序的卸载信息) ;如果您已经手工删除某个(些)应用程序, 请在Uninstall文件夹下找到该应用程序的子文件夹(很容易通过名字识别),然后删除该子文件夹即可。
去除注册表中的废弃信息
注册表有着与一般数据库类似的特点: 表项被删除掉后仍然留在注册表中(这是为了数据库的 “实时”运行效率),注册表文件并不缩小。这样,随着用户大量增删各种应用程序和硬件设备驱动程序,注册表中废弃的数据越来越多,注册表文件也越来越大。在一个典型的Win 95系统中,注册表文件的大小可以从1M字节增加到4M字节。注册表文件过大对Win 95的运行速度有很大的影响, 为了去除掉废弃信息,笔者采用了重建注册表的方法。
首先在“运行”窗口中调用注册表编辑器,从注册表菜单中导出整个注册表,将其存为www. reg;然后重启到DOS7.0命令行方式,载入磁盘高速缓存程序Smartdrv以便加快处理速度,接着按照下面的命令行运行DOS版的REGEDIT:
C:\Win 95 regedit/c www.rge
参数/C表示从后面指定的文件中重新生成整个注册表,重建的注册表文件往往比原来的小五分之一到三分之一左右,从而达到了优化的目的。
重建注册表时必须注意两点:第一,重建之前应备份注册表文件(安全第一);第二,要确保www.reg中包含全部注册表信息而不仅是它的一个分支。