当我删除整个 Windows 注册表时会发生什么?

当我删除整个 Windows 注册表时会发生什么?

我一直在想,如果我删除所有注册表内容,会发生什么。我的电脑会停止工作吗?编辑:我已经编辑了代码,现在应该可以删除注册表了。

cd %TMP%
reg query HKCR> RegTest.txt
reg query HKCU>> RegTest.txt
reg query HKLM>> RegTest.txt
reg query HKU>> RegTest.txt
reg query HKCC>> RegTest.txt
@pause && cls
for /f "delims=" %%I in (RegTest.txt) do reg delete "%%I" /va /f

答案1

您无法删除根节点。它们实际上并不存在。但是,您可以通过 Regedit(而不是reg)删除其内容。

当我尝试删除时,Regedit 就挂起了HKLM\SYSTEM。重置 VM 后(因为我很懒),我得到了以下屏幕(操作系统是 Windows XP):

在此处输入图片描述

(“Windows 无法启动,因为以下文件丢失或损坏:\WINXP\system32\config\SYSTEM”)

所以是的,从注册表中删除东西绝对会杀死 Windows。除非您有备份,否则无法恢复。

答案2

Windows 在注册表中存储了大量关键信息,这些信息(至少是其中的一部分)在启动的早期阶段加载。如果删除这些信息,Windows 将无法找到和加载关键系统文件,从而无法启动。

这些关键信息例如是启动系统所需的设备驱动程序列表。这可能包括:

  • 磁盘驱动程序(软盘、硬盘、CD、USB 设备……)
  • 总线驱动程序(IDE、SATA AHCI……)
  • 文件系统驱动程序(FAT、NTFS、...)
  • ...

但是,默认情况下,Windows 会存储注册表的备份副本。如果您启用了“系统还原”,则可以在System Volume Information系统分区根文件夹内的(隐藏)文件夹中找到此类副本。此外,即使您没有启用“系统还原”,Windows 也会将注册表的备份副本保存在 中%WINDIR%\System32\config\RegBack\

您可以手动复制备份文件进去%WINDIR%\System32\config\以恢复注册表数据。

相关内容