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

SkY*_*AGz 25 windows windows-registry

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

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
Run Code Online (Sandbox Code Playgroud)

Dan*_*l B 36

您不能删除根节点。它们在物理上并不存在。但是,您可以通过 Regedit(而不是reg)删除它们的内容。

一旦我尝试删除 .regedit 就会挂起HKLM\SYSTEM。重置虚拟机后(因为我很懒),我得到以下屏幕(操作系统是 Windows XP):

在此处输入图片说明

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

所以是的,从注册表中删除东西绝对会杀死 Windows。除非你有备份,否则恢复它是不可能的。

  • 理论上或实践上“不可能”? (6认同)
  • 通常,Windows 会自动对注册表进行大量备份,大多数是通过还原点进行的。在 Windows XP 中,您可以在“C:\System Volume Information”中查看这些注册表快照,然后将它们复制到“C:\Windows\config”。我用一台旧笔记本电脑成功地做到了这一点。 (3认同)
  • @BleedingFingers 你是指消除伤害吗?由于实际使用的两个 Windows 安装的注册表永远不会相同,因此您只能使用最近的备份来完全恢复 PC。当然,对于文件关联等不太重要的东西,使用另一个安装的数据*可能*工作。 (2认同)
  • 如果没有备份,您需要尝试使用另一台机器的注册表文件,因为注册表用于在启动过程的早期定位驱动程序(例如磁盘驱动程序之类的东西),而没有一些非常基本的驱动程序,内核就不会不知道如何与硬件交互。 (2认同)

小智 9

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

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

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

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

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