好了,言归正传。冰点6在正常安装的情况不会改写主引导扇区,只会在硬盘建立以下文件:
1. x:\Program Files\Faronics\DF5Serv.exe
2. X:\Program Files\Faronics\_$Df\FrzState2k.exe
3. X:\$Persi0.sys
4. X:\windows\system32\drivers\DeepFrz.sys
5. X:\windows\system32\LogonDll.dll
程序介绍:
1. DF5Serv.exe 冰点的服务程序,它添加在XP的服务列表中,注册表中加载位置为“[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DF5Serv]”
2. FrzState2k.exe 界面程序,系统托盘中的图标就是它。可惜我在系统中可能启动程序的地方找了个遍都找不到它是怎么启动的。在网上我看到有的人说它是由DF5Serv来间接启动的,开始我也是这样认为,但现在我看至少还须要另外一个条件,因为有很多朋友的图标不再出现,但DF5Serv仍在好好的运行着。有一个可以肯定,只要你DOS下运行过“FDISK /MBR”(重写主引导记录),重启后它马上不再出现,而且热键也同时失效:它不运行了!此时DF5Serv却仍在运行。而且同时开始保护所有分区。但我比较过重写前和重写后的主引导记录,没什么变化,只在41字节处如果为00即改为01,01就改为00,但即使还原了主引导记录,它也不再出现,点击运行它图标也不行,而且我安装冰点时特地开启了主板的主引导记录防写功能,没有出现过写主引导报警。因为我装的是双系统,C:WIN98 D:WINXP,我是XP中装的冰点,所以我进而怀疑会不会和D盘的0扇区有关,但粗略查看了一下,也没有什么发现(郁闷)。现在怀疑是我对"FDISK /MBR"的了解还还够,可能是该程序除了重写主引导记录外还有其它的动作,而这个动作恰恰就将FrzState2k的运行条件破坏了。
3. $Persi0.sys 还原用的文件。
4. DeepFrz.sys 注册表中加载位置为[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DeepFrz],最关键的东东,工作于系统最高级,不能被结束,在任务管理器中也看不到,但可以用IceSWord看到它在XP的内核模块中。文件倒是有办法删除,不过在注册表中的服务项末删除前就删除它会给你带来恶梦。因为它在开机时已接替(过滤监控)了系统的磁盘管理、卷偖存管理、键盘、鼠标,在注册表中你可以看到
磁盘驱动器的键值由正常的
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E967-E325-11CE-BFC1-08002BE10318}\UpperFilters=PartMgr
更改成了
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E967-E325-11CE-BFC1-08002BE10318}\UpperFilters=DeepFrz PartMgr
键盘也由
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318}\UpperFilters=kbdclass
改成
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318}\UpperFilters=DeepFrz kbdclass
鼠标和其它指针设备由
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96F-E325-11CE-BFC1-08002BE10318}\UpperFilters=mouclass
改为
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96F-E325-11CE-BFC1-08002BE10318}\UpperFilters=DeepFrz mouclass
存储卷由
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{71A27CDD-812A-11D0-BEC7-08002BE2092F}\UpperFilters=VolSnap
改为
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{71A27CDD-812A-11D0-BEC7-08002BE2092F}\UpperFilters=DeepFrz VolSnap
虽然就这几个,但看了上面我想不用说你也猜到了,你对硬盘的任何存取操作都已经在冰点的掌握中了,都必须经过它,再传到系统的驱动。所以你在进入XP后对受保护硬盘的所有操作都只不过是一个假象,比如你在受保护的盘中建立了N个文件,将XP的所有系统文件删除个干净等等(如果系统不阻止你的话),但所有的这些都是冰点给你看的戏,在受保护的盘里其实什么都没变。至少你建立的文件并没有在你看到的位置,你删除的文件实际上也并没有删除,不信你可以试试,先建立及再删除几个文件后马上按机箱上的“RESET”重启系统,这样就算冰点巨历害也不可能在这么短的时间将你动过的文件恢复。然后从光盘启动进入硬盘找找看,保证硬盘中什么都没有变过。如果你用光盘启动在DOS下删除了它(这个可以,因为只要你不进入XP,冰点就不起作用)。那么会在开机时因为找不到系统设备而出蓝屏,连安全模式都进不了。它的工作就是将用户在受保护分区的所有操作变成假象。不过它不知道该保护哪个分区(呵呵),得FrxState2k.exe告诉它,否则就将所有分区都保护起来(呵呵,想得还挺周到的)。即使你将前面的1、2、3文件全部删除,只要有它一个,你的所有分区还会被牢牢保护着。所以如果托盘图标不见了常常会伴随着所有分区都被还原保护。而且也不能正常卸载,虽然会出现正常卸载的画面。
5. LogonDll.dll 也是它的,不过我不知道是什么作用的。
经过前面的分析可以看到,只要你不进入XP系统,系统还原功能就不起作用,也就是说你可以在其它系统中对所有的分区进行任何修改而不用担心被还原,所以如果你以前做过Ghost的备份,那你只要用光盘启动GHOST一次就行了,条件是你的备份是在安装冰点前做的,如果你的备份是在安装冰点后做的,而且此时你的冰点图标也不见了,那么即使你还原了备份,那图标也不会出现。
但如果你没有做过GHOST备份,或系统盘中有很多东东不想失去,而且托盘图标也搞不出来了,那就只好用一个折衷的办法了。这一招对于忘记了密码或其它一些你想去掉冰点而又不想破坏硬盘数据的情况都适用。
因为冰点是在XP的注册表中加载的,那么我们就可以从注册表中想办法了。先准备一张可以启动DOS的系统盘,光盘也行,而且要保证有ATTRIB这个程序,其它就不用了。从光盘启动进入DOS,输入:
attrib -h -r -s C:\windows\repair\*.* ’将该目录下所有文件的隐藏、只读、系统属性去掉,“C”为你的XP安装盘盘符,你的XP在D盘就将C改为D,下同
attrib -h -r -s c:\windows\system32\config\*.* '将现在的注册表文件各属性去掉
md c:\config '在C盘下建立一个名为“CONFIG”的目录
copy c:\windows\system32\config\*.* c:\config '先备份旧的注册表文件,已免有意外时可以恢复,当然你也可以不做这一步
copy c:\windows\repair\*.* c:\windows\system32\config '出现确认时再按“y”,将系统的原始注册表覆盖掉现在的注册表
好了,重启电脑后进入XP冰点就不会再运行了,有空的话将刚才说到的冰点文件删除,懒得动的话留在那里也行,不会有什么影响的。这样做的唯一缺点就是可能有个别的程序运行不了,但绝大部份还是可以运行的,对运行不了的程序,只要重新安装一下就行了,因为文件还在那里,只是注册表中没了注册项目,所以一般的安装速度奇快,对于微软自带的那个播放器,则有可能要把“C:\Program Files\Windows Media Player”目录下的文件删除再重装才行。不过这样总比动不动就来个分区格式化好。
当然,如果你有U盘或硬盘的其它分区还没有被保护,那情况就要乐观很多。先进入注册表,将上面提到的冰点的两个注册键值删除,再将被修改的键值改回来,然后将整个注册表导出,保存到冰点没保护的地方,再按刚才的操作还原原始的注册表,开机后再将刚才导出的注册表导回去;或者进入XP的故障控制台(可从安装光盘进入或已安装控制台的直接进入),直接在控制台下导回去。呵呵,这样就完美得多了,除了冰点没运行,其它什么都没变。记住了,除了在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet键值下有,在HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002和HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001下都有相同的内容,要全部删除和修改。
另外,如果你在C:\windows\repair目录没有找到原始的注册表文件,情况就不同了,这个如何解决我还没试过,自己想办法吧。当然如果你在没装冰点前有GHO备份,可以用GHO直接还原,或从GHO备份中提取注册表文件再按刚才的办法做。