监视Win98的注册表

Author: 季昭君 Date: 2000年 第33期

  各位使用Win98的朋友一定对注册表很感兴趣吧!没错,有许多重要且秘密的设置都在其中,如果我们能时时刻刻监视系统的注册表,知道它的变化,这对我们了解程序的设置,系统的运行等都有很重要的作用。在此为大家介绍一个Win98自带的应用程序fc,用它就可了解注册表的变化情况,下面笔者就以实例来说明如何监视注册表。
#1    1.让共享软件不再过期
  现在有许多共享软件都有时间上的限制,到时间就不能再使用了。有很多这种程序都在注册表中以加密的形式添入了时间限制方面的子项,程序每次启动之前,都会读取注册表进行比较,如果时间大于指定范围即过期了。那么我们怎样才能从庞大的注册表中找到此子项呢?下面介绍一种方法:
  你第一次安装该软件时(如有30天限制),你可以运行Regedit打开注册表编辑器,选择“注册表/导出注册表文件”菜单,路径与文件名可自定(如c:\1.reg),这时你再将时间向前设置几天(如今天为7月1日,即改为7月5日)后,再运行一次此共享软件,其显示应为第五天,这时你再次打开注册表编辑器并导出注册表文件(如c:\2.reg),之后在Windows的DOS窗口中输入以下命令:
  fc c:\1.reg c:\2.reg>c:\ret.txt
  说明:fc是Win98自带的一个用以文件比较的命令,其格式为:
fc 原文件名 目标文件名
即用目标文件与原文件对比,并输出对比结果。上述命令中的
>c:\ret.txt
为输出重定向,即让对比结果保存在文件中以供后用。
  然后关闭DOS窗口,打开c:\ret.txt,这其中就是我们要找的子项了!
#1    2.让过期卸载后的应用程序能重装
  某种程序在过期卸载后不允许重装,这是因为你虽然卸载了这个应用程序,但并没有把注册表中各子项都删除,这些子项就是关键。当你重装此程序时,安装程序先读取注册表,寻找有没有关于此程序已被安装过的信息,如有则不允许重装。所以关键问题在于找到那些没有被删除的子项。你可以在第一次安装前就先导出注册表文件,在安装后再导出注册表文件一次,用上述命令把比较结果保存到一个文件中,以后先自动卸载程序,再手动把注册表中的子项一个一个删除即可,当然在删除之前还是请先备份一下哦!
  知道方法后,我们可在许多方面用到此方法,如你有一个注册表设置方面的软件,但你想知道此软件到底修改了注册表的哪些地方,你就可以用到上述的方法了。