[Version]Signature="$Windows NT$"Provider=Rizonesoft
[DefaultInstall]AddReg=UnhookReg
[UnhookReg]HKLM, Software\CLASSES\batfile\shell\open\command,,0x00000000,"""%1"" %*"HKLM, Software\CLASSES\comfile\shell\open\command,,0x00000000,"""%1"" %*"HKLM, Software\CLASSES\exefile\shell\open\command,,0x00000000,"""%1"" %*"HKLM, Software\CLASSES\piffile\shell\open\command,,0x00000000,"""%1"" %*"HKLM, Software\CLASSES\regfile\shell\open\command,,0x00000000,"regedit.exe ""%1"""HKLM, Software\CLASSES\scrfile\shell\open\command,,0x00000000,"""%1"" %*"HKCU, Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableRegistryTools,0x00010001,0HKCU, Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableCMD,0x00010001,0
一个 Windows 注册表修改脚本,通常用于调整和修改 Windows 系统中的某些注册表项,具体的目的是影响文件类型的行为、命令行工具的访问权限以及注册表编辑器的访问等。它是一个 .inf 文件的内容,通常用于通过 Windows 安装或其他自动化工具应用一些系统设置。下面是对每个部分的详细解释:
文件头部
iniCopy Code
[Version]
Signature="$Windows NT$"
Provider=Rizonesoft
Signature="WindowsNTWindowsNT":指示这是一个 Windows 安装或系统配置文件。
Provider=Rizonesoft:提供该脚本或文件的开发者或组织名称,在这种情况下是 "Rizonesoft"。这通常是文件作者或供应商的标识。
[DefaultInstall] 部分
iniCopy Code
[DefaultInstall]
AddReg=UnhookReg
AddReg=UnhookReg:这表示在默认安装过程中,将会执行 UnhookReg 部分中的注册表更改。即 UnhookReg 中定义的注册表项会被添加或修改。
[UnhookReg] 部分
该部分包含了多个注册表键值的更改,主要涉及文件类型的打开命令设置和某些策略的调整。
iniCopy Code
[UnhookReg]
HKLM, Software\CLASSES\batfile\shell\open\command,,0x00000000,"""%1"" %*"
HKLM, Software\CLASSES\comfile\shell\open\command,,0x00000000,"""%1"" %*"
HKLM, Software\CLASSES\exefile\shell\open\command,,0x00000000,"""%1"" %*"
HKLM, Software\CLASSES\piffile\shell\open\command,,0x00000000,"""%1"" %*"
HKLM, Software\CLASSES\regfile\shell\open\command,,0x00000000,"regedit.exe ""%1"""
HKLM, Software\CLASSES\scrfile\shell\open\command,,0x00000000,"""%1"" %*"
HKCU, Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableRegistryTools,0x00010001,0
HKCU, Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableCMD,0x00010001,0
1. 文件类型的修改
这部分更改了与不同文件类型(例如批处理文件 .bat、可执行文件 .exe、注册表文件 .reg 等)相关的命令行行为。
HKLM, Software\CLASSES\batfile\shell\open\command,,0x00000000,"""%1"" %*":对于 .bat 文件,修改其打开方式的命令。这段命令会确保通过正确的方式运行该文件。%1 是文件路径,%* 是附加的参数。
HKLM, Software\CLASSES\comfile\shell\open\command,,0x00000000,"""%1"" %*":类似的修改应用于 .com 文件。
HKLM, Software\CLASSES\exefile\shell\open\command,,0x00000000,"""%1"" %*":对于 .exe 文件,保证它按照标准的方式执行。
HKLM, Software\CLASSES\piffile\shell\open\command,,0x00000000,"""%1"" %*":同样,修改 .pif 文件的打开命令。
HKLM, Software\CLASSES\regfile\shell\open\command,,0x00000000,"regedit.exe ""%1""":对于 .reg 文件,注册表文件的打开命令被设置为 regedit.exe,确保这些文件通过注册表编辑器来打开。
HKLM, Software\CLASSES\scrfile\shell\open\command,,0x00000000,"""%1"" %*":对于 .scr 文件(屏幕保护程序文件),也设置了类似的命令。
这些修改的作用是确保不同类型的文件使用正确的程序打开。特别是对 .reg 文件的特殊处理,使得它们通过 regedit.exe 打开,而不是默认的命令行工具。
2. 注册表编辑和命令提示符访问限制
HKCU, Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableRegistryTools,0x00010001,0:这是一个安全策略设置,控制是否禁用注册表编辑器 regedit.exe。该设置为 0,意味着注册表编辑器是启用的。
HKCU, Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableCMD,0x00010001,0:类似地,这个注册表项控制是否禁用命令提示符(CMD)。设置为 0 表示命令提示符是启用的。
总结
这段代码主要做了以下几件事情:
修改文件类型的打开命令:它调整了 .bat、.com、.exe、.pif、.reg、.scr 等文件类型的打开行为。通常这些调整是为了确保文件通过正确的程序运行或打开。例如,.reg 文件将通过 regedit.exe 打开,而不是默认的命令行工具。
恢复注册表编辑器和命令提示符的访问权限:该脚本确保注册表编辑器和命令提示符在 Windows 操作系统中是可访问的(通过修改注册表设置)。这对于系统管理员或用户进行系统配置非常重要。
使用场景
修复或恢复默认设置:这种类型的脚本可能用于恢复或修复某些文件类型的默认打开方式,尤其是在这些设置被恶意软件或其他程序更改时。
系统定制:它也可以用于在企业环境中批量定制操作系统设置,确保注册表编辑器和命令提示符等工具是可访问的,或者为某些文件类型设置特定的打开方式。