Mở đăng ký trực tiếp đến một khóa nhất định?


57

Tôi cần mở một khóa registry như sau trong regedit.

HKLM\Software\Microsoft\Foo\Bar

Có một công cụ nào sẽ điều hướng đến chìa khóa cho tôi mà không phải tự mình điều hướng các thư mục không?


1
Để thêm 2, một lúc trước, tôi đã viết một chương trình mô phỏng nhấn phím khi không dán thường xuyên. Tôi đã thêm một chế độ đặc biệt cho các khóa đăng ký để cho phép bạn sao chép đường dẫn đăng ký và nhấn phím nóng trong khi ở Regedit để nó tự động điều hướng đến đường dẫn đó. Sau đó, tôi đã viết một chương trình sẽ thực hiện một số bảo trì đăng ký và cần thiết để cung cấp chức năng nhảy đến đường dẫn. Tôi đã kết thúc việc phát hiện nó nếu Regedit mở; nếu vậy nó sẽ gửi tổ hợp phím bên phải (tôi đã sao chép chức năng từ chương trình cũ) và nếu không, nó đã ghi …Regedit\LastKeyvà mở Regedit; Regedit nhảy chính nó.
Synetech

Bạn có thể bỏ phiếu trong ứng dụng Windows Feedback (trên Win10) "Regedit nên có chức năng thanh địa chỉ". Liên kết sau sẽ chỉ hoạt động trong Win10 windows-feedback :? contextid = 79 & feedbackid = b11f8bdf-eaf4-4799-8e65-5161924ad22c & form = 1 & src = 1
Michael Freidgeim

2
Windows 10 hiện bao gồm chức năng thanh địa chỉ trong trình chỉnh sửa sổ đăng ký. Xem câu trả lời của tôi.
Linh tinh

Câu trả lời:


64

Điều này không thể được thực hiện bằng cách sử dụng regedit.exechính nó hoặc bất kỳ tham số dòng lệnh nào của nó.

Tuy nhiên, Microsoft cung cấp regjump.exe, một tiện ích nhỏ (trước đây từ SysIternals) có thể được sử dụng để mở trình chỉnh sửa đăng ký cho một khóa được chỉ định.

Khi bạn cài đặt, bạn có thể mở khóa được chỉ định như vậy:

regjump HKEY_LOCAL_MACHINE\Software\Microsoft\Windows

hoặc thậm chí sử dụng chữ viết tắt:

regjump HKCU\Software\Microsoft\Windows

Các chữ viết tắt có sẵn là:

HKCR - HKEY_CLASSES_ROOT
HKCU - HKEY_CURRENT_USER
HKLM - HKEY_LOCAL_MACHINE
HKU - HKEY_USERS
HKCC - HKEY_CURRENT_CONFIG

Hoạt động tuyệt vời với Launchy . :)
Mateen Ulhaq

9
Tuyệt quá. Bây giờ, nếu MS có thể cung cấp công cụ, tại sao họ không thể sửa đổi regedit để cho phép các tham số dòng lệnh? Ít nhất win7 vẫn chưa có điều này ...
BmyGuest

2
Lưu ý rằng Windows 10 yêu cầu phải khởi động lại với các đặc quyền quản trị để hoạt động đúng.
Vladimir Reshetnikov

1
Sử dụng regjump -cđể mở khóa từ bảng ghi tạm.
xmedeko

Windows 10 hiện bao gồm chức năng thanh địa chỉ trong trình chỉnh sửa sổ đăng ký. Xem câu trả lời của tôi.
Linh tinh

13

Bạn có thể làm điều này bằng cách tạo một VBScript đơn giản trên máy tính để bàn của bạn mà không cần cài đặt bất kỳ phần mềm bổ sung nào.

Tập lệnh chỉ cần đặt khóa "được sử dụng lần cuối" trong sổ đăng ký, trước khi mở.

Mở Notepad, dán cái này vào nó và lưu nó làm FooBar.vbsví dụ:

Set WshShell = CreateObject("WScript.Shell")
WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\Lastkey","HKLM\Software\Microsoft\Foo\Bar","REG_SZ"
WshShell.Run "regedit", 1,True
Set WshShell = Nothing

Trong các thuộc tính cho tệp .vbs, bạn có thể yêu cầu nó không bật lên hộp đen vì nó đang chạy tập lệnh, để làm cho nó gọn gàng hơn một chút.

Nếu bạn muốn trở nên lạ mắt, bạn có thể lưu tập lệnh .vbs ở một nơi khác và tạo một lối tắt trên màn hình của bạn vào nó. Sau đó, bạn sẽ có thể thay đổi biểu tượng và nó có thể trông đẹp (nếu bạn thực sự muốn).

EDIT - Nếu bạn muốn được hỏi khóa nào bạn muốn mở mỗi lần, đây là những gì bạn sẽ sử dụng thay thế:

Set WshShell = CreateObject("WScript.Shell")
Dim JumpToKey
JumpToKey=Inputbox("Which registry key would you like to open?")
WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\Lastkey",JumpToKey,"REG_SZ"
WshShell.Run "regedit", 1,True
Set WshShell = Nothing

Thay đổi khóa được mở thành sẽ yêu cầu chỉnh sửa tập lệnh mỗi lần, trừ khi nó được cung cấp dưới dạng đối số dòng lệnh. Giải pháp tốt đẹp mặc dù, rất hữu ích.
mindless.panda

Chà, tôi thích cái này như một giải pháp vì nó có thể mở rộng và dạy một số kịch bản cơ bản. Tôi giả sử bạn sử dụng hộp đầu vào vì chạy tập lệnh qua dòng lệnh yêu cầu gọi nó qua máy chủ tập lệnh? Và vì vậy, chỉ đơn giản là làm một cái gì đó như "script / key / foo / bar" không phải là một tập lệnh trực tiếp cho một tập lệnh trên dòng lệnh?
mindless.panda

Tôi đã xóa ý kiến ​​của tôi. Hãy thử cả hai và xem cái nào dễ nhất :-)
Kez

12

Windows 10 hiện bao gồm chức năng thanh địa chỉ trong Registry Editor:

Chức năng thanh địa chỉ của Registry Editor

Vì vậy, chỉ cần gõ hoặc dán đường dẫn vào thanh địa chỉ và nhấn Enter.


Các chữ viết tắt sau đây hoạt động với thanh địa chỉ:

HKCR - HKEY_CLASSES_ROOT
HKCU - HKEY_CURRENT_USER
HKLM - HKEY_LOCAL_MACHINE
HKU - HKEY_USERS

Vì vậy, HKCC - HKEY_CURRENT_CONFIGviết tắt không hoạt động (ít nhất là cho đến ngày này).


Bạn có thể kích hoạt thanh địa chỉ bằng cách nhấn Ctrl+Lhoặc Alt+D, giống như trong Windows Explorer.


Tôi có windows 10 và tôi không có thanh địa chỉ này. Và hai cắt ngắn không hoạt động.
CÔNG VIỆC

@WORMSS Thật là kỳ lạ. Xem nếu bạn có một Address Barmục trong Viewmenu của Registry Editor.
Linh tinh

Tôi đã kiểm tra, Không, tôi phải (1) có phiên bản cũ của RegEdit hoặc (2) có phiên bản thứ hai của nó trên máy ở đâu đó nhưng không phải trên% PATH%, tôi đã kiểm tra PC tại nhà của tôi chạy Win10 Trang chủ đã có thanh địa chỉ rồi. Máy tính làm việc chạy Win10Pro có RegEdit cổ điển. Oh tốt, ít nhất bây giờ tôi biết.
CÔNG VIỆC

@WORMSS Có lẽ Microsoft đã thêm thanh địa chỉ trong Cập nhật của người tạo.
Linh tinh

có lẽ, CU phá vỡ một số phần mềm tại nơi làm việc, vì vậy chúng tôi không có nó ở đó ... Không biết PC nhà của tôi có nó không .. Không bao giờ bận tâm để tìm .. Cảm ơn bạn đã giúp đỡ.
CÔNG TRÌNH

6

Sao chép văn bản dưới đây và lưu nó dưới dạng tệp bó và chạy

@ECHO OFF & setlocal
SET /P "showkey=Please enter the path of the registry key: "
REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit" /v "LastKey" /d "%showkey%" /f 
start "" regedit

Nhập đường dẫn của khóa đăng ký mà bạn muốn mở khi tệp bó nhắc nó và nhấn Entervà bạn sẽ có thể mở regedit với đường dẫn khóa đăng ký được yêu cầu.


Tôi đã phải tháo @ECHO OFF<br>để làm cho nó làm việc trên windows 8
steampowered

4

Trong RegEdit, bạn có khả năng đánh dấu đường dẫn.

Từ menu trên cùng chọn

Favorites Add to Favorites


Khi bạn đã đánh dấu các mục yêu thích của mình, hãy sao lưu khoá đăng ký HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\Favoritesđể bạn có thể dễ dàng khôi phục trên một máy tính mới có lại tất cả các mục yêu thích của bạn.
James L.

3

Tôi luôn luôn sử dụng một chương trình macro mạnh mẽ ( QWin ), chủ yếu để nhập những thứ được sử dụng thường xuyên. QMothy cũng có khả năng CHẠY ứng dụng.

Khi tôi nói với tác giả, Gary Chanson, về regjump và hỏi liệu có thể truyền nội dung clipboard như một đối số lệnh hay không, anh ta đã cập nhật nó để cho phép chuyển nội dung của bộ đệm clipboard thành một biến có nghĩa;

Khi tôi sao chép bất kỳ khóa nào vào bảng tạm, tất cả những gì tôi phải làm là nhấn kotkey cho QMothy và nhập "J" để truy cập trực tiếp vào khóa đó trong Regedit.

Tuy nhiên, trong khi các công cụ trên hoạt động trong XP, trong Win7 / 8 QMothy không thành công do các hạn chế của os đối với việc chạy các tệp thực thi. Mặc dù nó sẽ hoạt động bằng cách thiết lập qMothy thành "RUN với tư cách quản trị viên" yêu cầu phê duyệt mọi macro bàn phím mà tôi đã gọi. Giải pháp? Đặt QMothy lên RUN một phím tắt cho RegJump và đặt phím tắt thành "RUN làm quản trị viên (bạn có thể chuyển một đối số cho một phím tắt sẽ chuyển nó tới chương trình mà nó khởi chạy)

Nếu QMothy nghe có vẻ thú vị, tôi có một trang về việc sử dụng nó tại bevhoward.com/WinTools.htmlm

Lưu ý, trong khi tôi đã sử dụng các công cụ của Gary trong nhiều năm, các chương trình AV khác nhau đã gắn cờ một số tệp bị nhiễm ... trong trường hợp QMothy được cập nhật, nó đã bị Avast gắn cờ, nhưng vấn đề được cho là đã được giải quyết cập nhật tiếp theo của họ.

Hy vọng rằng thông tin này có giá trị. Howard


Chào mừng bạn đến với Siêu người dùng! Đó là một câu trả lời tuyệt vời, nhưng bạn có phiền khi thêm một số thông tin bạn có trên trang bạn liên kết đến không? Tất cả đều tốt và tất cả, nhưng tốt nhất là nếu nó ở đây - theo cách đó, nếu trang web của bạn bị sập hoặc thay đổi, câu trả lời cho câu hỏi vẫn có sẵn. :)
Thor

2

Nircmd cũng có thể làm điều đó.

http://www.nirsoft.net/utils/nircmd.html

 Open the desired Registry key/value in RegEdit
 nircmd.exe regedit "HKLM\Software\Microsoft\Windows\CurrentVersion" "CommonFilesDir"

 Open the Registry key that you copied to the clipboard in RegEdit
 nircmd regedit "~$clipboard$"

RegScanner là một GUI để tìm kiếm sổ đăng ký, với tùy chọn để chuyển đến khóa đã chọn.

http://www.nirsoft.net/utils/regscanner.html


2

Tôi có một bộ dịch vụ đại diện cho các phiên bản khác nhau của một chút phần mềm cây nhà lá vườn; tất cả các tên dịch vụ đều bắt đầu bằng tên của phần mềm, theo sau là một số chi tiết cụ thể.

ProgramName_Detail1A_Detail1B
Chương trìnhName_Detail2A_Detail2B

Các mô tả được cập nhật thường xuyên vì mục đích sử dụng của từng trường hợp sẽ thay đổi theo thời gian, nhưng mô tả chỉ có thể được thay đổi trong sổ đăng ký. Với ý nghĩ đó, mã .BAT sau đây tìm dịch vụ "Tên chương trình *" đầu tiên và mở regedit với dịch vụ đầu tiên đã được chọn. (Tên dịch vụ của tôi không chứa dấu cách; nếu bạn thực hiện, một số điều chỉnh sẽ được yêu cầu.)

@echo off
setlocal

set __first=
for /f "tokens=5 delims=\" %%i in ('reg query HKLM\system\currentcontrolset\services /f ProgramName*') do call :findfirst %%i

if "%__first%" == "" (
  echo No ProgramName entries found in registry. Aborting...
  pause
  goto :EOF
)

reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit /v LastKey /d Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\%__first% /f

start regedit

goto :EOF

:findfirst
if "%__first%" == "" set __first=%1

goto :EOF

1

Không có cách nào để thực hiện việc này với Trình chỉnh sửa Sổ đăng ký tiêu chuẩn.

Tuy nhiên, Microsoft / Sysiternals có một công cụ gọi là Regjump thực hiện chính xác những gì bạn cần - khởi chạy đến đúng vị trí trong trình chỉnh sửa sổ đăng ký.


1

Một điều bạn có thể cân nhắc thực hiện nếu bạn sử dụng Regjump là thiết lập biến môi trường, ví dụ REGJUMP = C: \ path \ to \ regjump.exe. Sau đó, bạn có thể sử dụng Regjump từ hộp 'Bắt ​​đầu tìm kiếm' trong, ví dụ, Menu Bắt đầu của Windows Vista:

gõ% REGJUMP% trong hộp Bắt đầu tìm kiếm

[Bạn có thể cần duyệt đến vị trí của regjump.exe và đặt regjump.exe để 'Chạy chương trình này dưới dạng Cấp đặc quyền của quản trị viên trên tab Thuộc tính-> Tương thích. Điều này sẽ đảm bảo rằng Regjump hoạt động chính xác trên các máy tính chạy với Kiểm soát tài khoản người dùng].


Hoặc, thêm toàn bộ Sysiternals Suite vào đường dẫn. Theo kinh nghiệm của tôi một ý tưởng tuyệt vời.
usr

1

Với Autohotkey cộng với regjump , bạn có thể xác định một phím tắt để nhảy đến một đường dẫn chính trên bảng tạm. Thí dụ:

^!+k::
  Run path\regjump.exe %clipboard%
  return

Lưu ý rằng đối với Win7, bạn cần đặt "Chạy này với tư cách quản trị viên" trong các thuộc tính Tương thích của regjump.exe


1

Cách dễ nhất là sử dụng phần mềm của bên thứ 3. Một trong những hiệu quả nhất là jumper key Registry , và nó là một phần mềm miễn phí di động.

Phần thú vị nhất là bạn không phải sao chép khóa đăng ký: chỉ cần chọn nó và sử dụng CtrlAltX, sau đó ivị trí khóa đăng ký sẽ được mở tự động. Nếu bạn chọn evà nhập một số văn bản, nếu có khóa đăng ký bên trong, jumper khóa Registry có thể tự động loại bỏ văn bản và sẽ mở vị trí khóa.


1

Tệp bó này hoạt động với tôi trên windows 8 nếu regedit bị đóng khi tệp bó chạy.

showkey=Please enter the path of the registry key:
REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit" /v "LastKey" /d "%showkey%" /f 
start regedit

1

Nếu bạn phải sử dụng nó nhiều, điều đó có ý nghĩa dễ dàng hơn - bạn có thể kết hợp RegJump và Notepad ++ để đi đến vị trí đăng ký của mình sau khi chọn đường dẫn reg trong văn bản.

Tải regjump , giải nén vào vị trí an toàn của bạn, tạo tệp bó:

C: \ [... đường dẫn đến regjump.exe của bạn ...] \ regjump.exe% 1

Đây là cách để đạt được điều này:

  1. Cài đặt NppExec thông qua Plugin, Trình quản lý plugin.
  2. Sau đó, trong NPP - nhấp F6 (menu NPP: Plugins / NPP Execute / Execute) thêm / lưu các mục sau: (nếu bạn gọi regjump.exe trực tiếp, nó sẽ flash, nhưng không mở registry ..., bạn có thể thử gọi nó sử dụng cmd với công tắc)
C: \ [... đường dẫn đến tệp bó của bạn ...] \ regjump.bat "$ (CURRENT_WORD)"
  1. Lưu tập lệnh, đặt tên "RegJump to"
  2. mở Plugin / NPP Exec / Tùy chọn nâng cao ...
  3. ở phía dưới bên trái dưới 'Tập lệnh liên kết' thả xuống, chọn 'RegJump to' của bạn
  4. nhấp vào nút 'Thêm / Sửa đổi'
  5. kiểm tra bên dưới các mục Menu 'Place to the Macros submenu'
  6. nhấp vào 'OK' để đóng cửa sổ 'Tùy chọn nâng cao NPPExec'

cách sử dụng : nếu bạn có văn bản mở trong Notepad ++ chứa đường dẫn đăng ký, hãy chọn đường dẫn đăng ký này và nhấp vào Menu: 'Macro / RegJump to' - nó sẽ mở đăng ký ở vị trí cần thiết, nếu đường dẫn là chính xác. nếu đường dẫn không đúng, nó sẽ mở registry trong đường dẫn cha gần nhất.

regjump cũng hỗ trợ các phím viết tắt: HKLM \ Software \ Microsoft

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.