"How to jump to the desired registry key with one click"翻译,如何一键跳转到所需注册表
声明
本文为翻译,已获作者授权,原文地址如下: How to jump to the desired registry key with one click
原作者: Sergey Tkachenko
正文
如何一键跳转到所需的注册表项
如果你像我一样沉迷于各种注册表调整,你可能经常与注册表编辑器打交道。各种相关网站都有指示你调整注册表项的内容。我想分享我自己的方式,跳过手动查找注册表,直接跳到所需的注册表项。这可以通过简单的VB脚本文件来完成,而无需使用第三方软件。
概述
自 Windows 2000 以来,注册表编辑器就能够记住关闭密钥之前的最后一个打开的密钥。此数据存储在以下注册表项中:
HKEY_Current_User\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit
Windows 使用LastKey值来存储最后一个使用的密钥。
如您所见,这是一个当前用户的注册表分支,因此 Windows 会为每个用户单独存储最后一个使用的密钥。可以利用此功能直接跳转到所需的密钥。让我展示如何通过 Windows 脚本主机和 VBScript 完成它。
实施
Windows 10
如果是 Windows 10 build14942 或以上版本,则不需要第三方应用的脚本。自生成 14942 以来,Windows 10 中的注册表编辑器应用获得了一个地址栏,该地址栏显示当前注册表密钥路径,并允许您复制和粘贴它。
HKEY_*的根键值可以简写:
- HKEY_CURRENT_USER = HKCU
- HKEY_CLASSES_ROOT = HKCR
- HKEY_LOCAL_MACHINE = HKLM
- HKEY_USERS = HKU
因此,当您需要直接转到HKEY_CURRENT_USER\控制面板\桌面时,可以在地址栏中键入以下内容
hkcu\control panel\desktop
敲下Enter路径就会自动展开:
Windows 8.1/Windows 7/Windows Vista 和 Windows XP
思路是,基于概述所说的LastKey的原理。将所需注册表项的完整路径复制到剪贴板,并将LastKey值替换为剪贴板中复制的值。执行此操作后启动 regedit.exe 时,它将直接打开所需的Key值。
如何使用 VBscript 获取剪贴板内容
“htmlfile” ActiveX 对象用于在 Windows 中显示 HTML 帮助和 HTA 文件。它可用于获取剪贴板内容。甚至不需要安装 IE。代码如下:
set objHTA=createobject("htmlfile")
cClipBoard=objHTA.parentwindow.clipboarddata.getdata("text")
如果剪贴板内容是文本,它将存储在cClipBoard变量中。简单吧。
在所需键处直接打开 Regedit
复制了所需键值路径后,我们需要将其写入LastKey中,代码如下:
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\LastKey", сClipBoard, "REG_SZ"
作用不言自明
完整代码如下:
Dim objHTA
Dim cClipBoard
Dim WshShell
set objHTA=createobject("htmlfile")
cClipBoard=objHTA.parentwindow.clipboarddata.getdata("text")
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\LastKey", cClipBoard, "REG_SZ"
WshShell.Run "regedit.exe -m"
Set objHTA = nothing
Set WshShell = nothing
注意"WshShell.Run “regedit.exe-m"这一行。它包含”-m"(undocumented)开关,允许您同时运行多个注册表实例。
将代码保存为.vbs文件,双击运行。记得使用方法:1. 拷贝键值路径;2. 双击xxx.vbs文件。
如果您频繁打开 Regedit,则可以将xxx.vbs 固定到任务栏。创建新快捷方式并在快捷方式目标文本框中键入以下内容
wscript.exe d:\regnav.vbs
当然,注意修改路径。
P.S. 如何测试此脚本
- Select this text
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
- Press CTRL+C
- Click on xxx.vbs.
Winaero Tweaker app
这是相关的软件,包含不少Windows日常使用的注册表项的调整功能。例如,UI的显示细节,系统信息的修改,注册表值的快捷打开等等。
下载: