本帖最后由 likeyouli 于 2024-5-6 08:36 编辑
 | RegistryChangesView v1.30
版权所有 (c) 2017 - 2023 Nir Sofer |
来源https://www.nirsoft.net/utils/registry_changes_view.html另见
描述RegistryChangesView 是一种适用于 Windows 的工具,可用于拍摄 Windows 注册表的快照,然后将其与其他注册表快照、当前注册表或存储在 Windows 创建的卷影副本中的注册表文件进行比较。 比较 2 个注册表快照时,您可以查看 2 个快照之间在注册表中所做的确切更改,并可以选择将注册表更改导出到 RegEdit 的标准.reg文件中。
系统要求此实用程序适用于任何版本的 Windows,从 Windows XP 到 Windows 11。支持 32 位和 64 位系统。
历史版本- 版本1.30:
- 添加了从菜单中更改排序列的选项(“视图”->“排序方式”)。与列标题单击排序一样,如果再次单击相同的排序菜单项,它将在升序和降序之间切换。此外,如果您在选择排序菜单项时按住 shift 键,您将获得二次排序。
- 添加了“排序依据”工具栏按钮。
- 版本1.29:
- 修复了 bug:添加或删除值时,RegistryChangesView 无法处理大值(超过 16,344 字节)。
- 版本1.28:
- 更新为在高 DPI 模式(工具栏、状态栏和属性窗口)下正常工作。
- 版本1.27:
- 修复了 bug:指定创建注册表快照的相对路径时,安全配置单元是在 System32 目录下创建的,而不是在指定的快照文件夹下创建的。
- 版本1.26:
- 修复了 /cfg 命令行选项,以便在未指定完整路径时从当前目录加载 .cfg 文件。
- 版本1.25:
- 添加了使用系统上其他用户的ntuser.dat配置单元(而不是运行 RegistryChangesView 工具的用户)创建注册表快照的选项。
- 版本1.22:
- 添加了选择另一种字体(名称和大小)以在主窗口中显示的选项。
- 版本1.21:
- 版本1.20:
- 添加了更多命令行选项,允许您比较注册表快照并将结果导出到.reg文件或 csv/tab-delimited/xml/html 文件。
- 版本1.15:
- 版本1.12:
- 修复了 bug:RegistryChangesView 无法正确处理大值(超过 16,344 字节),此问题还导致 RegistryChangesView 在某些系统上崩溃。
- 版本1.11:
- 添加了 /cfg 命令行选项,以使用指定的配置文件启动 RegistryChangesView。
- 版本1.10:
- RegistryChangesView 现在在加载大量项时消耗的内存更少。
- 版本1.08:
- 修复了 bug:当值名称包含“\”或“”“字符时,RegistryChangesView .reg文件生成不正确。
- 修复了 bug:在某些情况下,RegistryChangesView 省略了第一个.reg文件值的键名。
- 版本1.07:
- 修复 bug:RegistryChangesView 导出REG_EXPAND_SZ值不正确。
- 版本1.06:
- 修复了 bug:“创建注册表快照”窗口中的浏览按钮不起作用。
- 版本1.05:
- 添加了 /CreateSnapshot 命令行选项,用于从命令行创建注册表快照。
- 版本1.01:
- 修复了 bug:在某些情况下,RegistryChangesView 跳过了一半的子项,或者在读取包含许多子项的注册表项时崩溃。
- 版本 1.00 - 首次发布。

您可以使用此工具执行的有用操作的示例- 您可以在安装新软件之前创建注册表快照,然后在安装完成后,将此注册表快照与当前注册表进行比较,并查看 安装程序所做的所有注册表更改(请注意,您还将同时看到 Windows 或其他程序所做的一些更改)。 如果存在您不喜欢的注册表更改,则可以生成一个.reg文件来还原这些更改。
- 如果您从 Windows 的 GUI 对 Windows 配置进行更改,并且想要查看如何在注册表中进行此更改,只需 在进行配置更改之前创建注册表快照,然后在配置更改后,将此注册表快照与当前注册表进行比较,并选择性地 生成一个.reg文件,用于更改此配置。
- 如果系统的注册表中存在不需要的更改,但您没有任何以前的快照,则可以将当前注册表与 Windows 创建的卷影副本进行比较,并 尝试找到不需要的注册表更改。
- 您也可以使用此工具作为备份注册表的简单方法。RegistryChangesView 创建的快照仅包含与原始配置文件同名的注册表配置单元文件(ntuser.dat、SYSTEM、 软件,等等......
开始使用 RegistryChangesViewRegistryChangesView 不需要任何安装过程或其他 DLL 文件。要开始使用它,只需运行可执行文件 - RegistryChangesView.exe 运行 RegistryChangesView
后,将显示主选项窗口,允许您选择 2 个注册表快照进行比较。 对于每个快照,您可以选择以下数据源之一:“当前注册表”、“保存的注册表快照”和“卷影副本”。 您可以选择所需的任何组合,只要“数据源 1”与“数据源 2”不相同。例如:您可以选择比较 2 个不同卷影副本的注册表, 将卷影副本与当前注册表进行比较,将保存的注册表快照与当前注册表进行比较,将保存的注册表快照与另一个保存的注册表快照进行比较,等等...如果要生成新的注册表快照,只需在数据源组合框中选择“保存的注册表快照”,然后单击“创建注册表快照”按钮。 在“创建注册表快照”窗口中,选择要保存注册表快照的文件夹,单击“创建快照”按钮,然后等待几秒钟以创建快照。 您还可以通过按 F8(文件 -> 创建注册表快照)从主窗口创建新的注册表快照。 选择要比较的 2 个注册表数据源后,还应该设置以下选项: - 方向:此字段确定如何比较 2 个注册表快照。例如:如果您选择的方向是“注册表数据源 1 =>注册表数据源 2”,则第二个快照上存在的每个注册表项或值都 在第一个快照上不存在将显示为“添加的键”或“附加值”。但是,如果选择相反的方向(“注册表数据源 2 =>注册表数据源 1”),则第二个快照上存在的每个注册表项或值都 在第一个快照上不存在将显示为“已删除的键”或“已删除的值”。
direction 字段还会影响.reg文件的生成方式(“将所选项目导出到 .注册文件“和”复制为 .注册文件格式“选项)。 如果选择的方向是“注册表数据源 1 =>注册表数据源 2”,则生成的.reg文件将从快照 1 更改为快照 2。 如果选择的方向是“注册表数据源 2 =>注册表数据源 1”,则生成的.reg文件将从快照 2 更改为快照 1。 - 要比较的荨麻疹:允许您选择要比较的注册表配置单元。 例如,如果只想查看HKEY_CURRENT_USER上的注册表更改,则应选择“HKEY_CURRENT_USER”和“HKEY_CURRENT_USER\Software\Classes”配置单元,并取消选择所有其他配置单元。
选择所有选项后,单击“确定”按钮。RegistryChangesView 将比较您选择的 2 个注册表数据源,结果将显示在主窗口中。
一些重要评论- 默认情况下,不会选择 SAM 和 SECURITY 注册表配置单元进行比较和生成新的注册表快照。 如果需要比较这 2 个注册表配置单元,可以选择它们,但应注意存在安全风险: 这些注册表配置单元包含系统的加密密钥和密码哈希,如果注册表快照中保留非管理员用户可以访问的 SAM/SECURITY 配置单元, 在您的系统上找到这些文件的黑客可能会使用它们来渗透您的系统。
- 选择“当前注册表”作为数据源之一时,RegistryChangesView 会在 %temp%\TempRegSnapshotX 文件夹(X = 数值)上生成临时注册表快照,并在注册表比较过程完成后将其删除。
- RegistryChangesView 创建的注册表快照只是一个文件夹,其中包含具有原始名称的注册表文件。 如果您有注册表配置单元的副本,并且想要将它们用作快照,只需将它们复制到具有原始文件名(软件、系统、ntuser.dat UsrClass.dat)的单独文件夹中,然后选择此文件夹作为注册表快照。
列说明- 注册表项:注册表项的完整路径。
- 更改类型:注册表更改类型: 添加键、删除键、添加值、删除值、修改值。
- 值名称:注册表值的名称(仅当“更改类型”为“附加值”、“删除值”或“修改值”时才相关)
- 数值数据:注册表值的内容(仅当“更改类型”为“附加值”、“删除值”或“修改值”时才相关)。 如果“更改类型”为“修改值”,则此列显示更改前的原始值,而“更改为的值数据”列显示更改后的值。
- 值类型:注册表值的类型(REG_SZ、REG_DWORD、REG_BINARY 等... 如果“更改类型”为“修改值”,则此列显示更改前的原始值类型,而“更改为的值类型”列显示更改后的值类型。
- 数值数据更改为:更改后的注册表值的内容(仅当“更改类型”为“修改值”时才相关)。
- 值类型更改为:更改后的注册表值类型(仅当“更改类型”为“修改值”时才相关)。
- 密钥修改时间 1:第一个快照中指定注册表项的时间戳。
- 密钥修改时间 2:第二个快照中指定注册表项的时间戳。
生成.reg文件RegistryChangesView 允许您生成一个 .reg 文件,该文件可用于使用 Windows 的 RegEdit 工具导入。
生成.reg文件有 2 个选项:(这两个选项都适用于所选项目,您可以按 Ctrl+A 选择所有项目)- 将所选项目导出到 。注册文件 (Ctrl+E):导出到您选择的.reg文件名。
- 复制为 .注册文件格式 (Ctrl+R):将.reg文件格式的文本生成到剪贴板中。
.reg文件是根据“选项”窗口中的“方向”字段生成的。 如果方向为“注册表数据源 1 =>注册表数据源 2”,则生成的.reg文件将从快照 1 更改为快照 2。 如果方向为“注册表数据源 2 =>注册表数据源 1”,则生成的.reg文件将从快照 2 更改为快照 1。
快速过滤器如果只想查看包含特定字符串的注册表项或值,可以按 Ctrl+Q(“查看”->“快速筛选器”) ,然后在快速筛选器文本框中键入所需的筛选器字符串。
命令行选项| /cfg <文件名> | 使用指定的配置文件启动 RegistryChangesView。 例如:
RegistryChangesView.exe /cfg “c:\config\rcv.cfg”
RegistryChangesView.exe /cfg “%AppData%\RegistryChangesView.cfg” | | /sreg <文件名> | 将注册表比较结果保存到 .reg 文件中。 | | /stext <文件名> | 将注册表比较结果保存到常规文本文件中。 | | /stab <文件名> | 将注册表比较结果保存到制表符分隔的文本文件中。 | | /scomma <文件名> | 将注册表比较结果保存到逗号分隔的文本文件 (csv) 中。 | | /shtml <文件名> | 将注册表比较结果保存到 HTML 文件(水平)中。 | | /sverhtml <文件名> | 将注册表比较结果保存到 HTML 文件(垂直)中。 | | /sxml <文件名> | 将注册表比较结果保存到 XML 文件中。 | | /CreateSnapshot [文件夹] | 在指定文件夹中创建注册表 snaphot。如果该文件夹不存在,RegistryChangesView 将创建它。 默认情况下,快照将根据最后的设置创建,但您可以使用以下命令(/CreateSnapshot.SoftwareHive、/CreateSnapshot.SystemHive 等)进行更改。 |
/CreateSnapshot.SoftwareHive [0 | 1]
/CreateSnapshot.SystemHive [0 | 1]
/CreateSnapshot.NTUserHive [0 | 1]
/CreateSnapshot.UsrClassHive [0 | 1]
/CreateSnapshot.DefaultHive [0 | 1]
/CreateSnapshot.BCD00000000Hive [0 | 1]
/CreateSnapshot.SAMHive [0 | 1]
/CreateSnapshot.SecurityHive [0 | 1] | 指定要包含在快照中的配置单元 (1 = include, 0 = execlude) 例如:
RegistryChangesView.exe /CreateSnapshot “c:\temp\snapshot1” /CreateSnapshot.SoftwareHive 1 /CreateSnapshot.SystemHive 0 /CreateSnapshot.NTUserHive 1 /CreateSnapshot.UsrClassHive 1 |
/DataSourceType1 [1 | 2 | 3]
/DataSourceType2 [1 | 2 | 3] | 指定要比较的数据源:
1 - 当前注册表 2 - 保存的注册表快照 3 - 卷影复制 |
/RegSnapshotPath1 [路径]
/RegSnapshotPath2 [路径] | 指定 DataSourceType 为 2 时注册表快照的路径 |
/ShadowCopyPath1 [路径]
/ShadowCopyPath2 [路径] | 指定 DataSourceType 为 3 时卷影副本的路径 |
/DataSourceDirection [1 | 2] | 指定比较方向:
1 - 注册表数据源 1 => 注册表数据源 2
2 - 注册表数据源 2 => 注册表数据源 1 |
/Compare.SoftwareHive [0 | 1]
/Compare.SystemHive [0 | 1]
/Compare.NTUserHive [0 | 1]
/Compare.UsrClassHive [0 | 1]
/Compare.DefaultHive [0 | 1]
/Compare.BCD00000000Hive [0 | 1]
/Compare.SAMHive [0 | 1]
/Compare.SecurityHive [0 | 1] | 指定要比较的配置单元(1 = 比较,0 = 不比较) |
例子: - 将保存的注册表快照与当前注册表进行比较,并将结果导出到regcomp1.reg:
RegistryChangesView.exe /DataSourceDirection 1 /DataSourceType1 2 /DataSourceType2 1 /RegSnapshotPath1 “C:\temp\RegSnapshot20190622075426” /sreg “c:\regcomp1.reg” - 比较 2 个保存的注册表快照并将结果导出到regcomp1.csv:
RegistryChangesView.exe /DataSourceDirection 1 /DataSourceType1 2 /DataSourceType2 2 /RegSnapshotPath1 “C:\temp\RegSnapshot20190622075426” /RegSnapshotPath2 “C:\temp\RegSnapshot20190623022112” /scomma “c:\temp\regcomp1.csv”
将 RegistryChangesView 翻译成其他语言若要将 RegistryChangesView 翻译成其他语言,请按照以下说明操作:- 使用 /savelangfile 参数运行 RegistryChangesView:
RegistryChangesView.exe /savelangfile
将在 RegistryChangesView 实用程序的文件夹中创建一个名为 RegistryChangesView_lng.ini 的文件。 - 在记事本或任何其他文本编辑器中打开创建的语言文件。
- 将所有字符串条目翻译成所需的语言。 或者,您还可以添加您的姓名和/或指向您的网站的链接。 (TranslatorName 和 TranslatorURL 值)如果添加此信息,则 在“关于”窗口中使用。
- 完成翻译后,运行 RegistryChangesView 并全部翻译 字符串将从语言文件加载。
如果要在不进行翻译的情况下运行 RegistryChangesView,只需重命名语言文件,或移动 它添加到另一个文件夹。
许可证此实用程序作为免费软件发布。 您可以通过软盘、CD-ROM 自由分发此实用程序, 互联网,或以任何其他方式,只要您不为此收取任何费用,并且您不这样做 将其作为商业产品的一部分出售或分发。 如果分发此实用程序,则必须将所有文件包含在 分发包,无需任何修改!
免責聲明本软件按“原样”提供,不作任何明示或暗示的保证, 包括但不限于对适销性和适用性的默示保证 用于特定目的。作者不对任何特殊的、偶然的、 由于数据丢失或任何其他原因导致的间接或间接损害。
反馈如果您有任何问题、建议、评论,或者您在我的实用程序中发现了错误, 您可以向 nirsofer@yahoo.com 发送消息
RegistryChangesView 还提供其他语言版本。为了改变语言 RegistryChangesView,下载适当的语言 zip 文件,提取“registrychangesview_lng.ini”, 并将其放在安装 RegistryChangesView 实用程序的同一文件夹中。
|