如何一键跳转到所需注册表

"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值来存储最后一个使用的密钥。
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路径就会自动展开:
注册表编辑器一般状态
输入路径
敲下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. 如何测试此脚本

  1. Select this text

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

  1. Press CTRL+C
  2. Click on xxx.vbs.

Winaero Tweaker app

这是相关的软件,包含不少Windows日常使用的注册表项的调整功能。例如,UI的显示细节,系统信息的修改,注册表值的快捷打开等等。
下载:

  1. 官网链接
  2. CSND资源
    Winaero Tweaker界面
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章