Registrierung direkt zu einem bestimmten Schlüssel öffnen?

36119
lance

Ich muss einen Registrierungsschlüssel wie den folgenden in regedit öffnen.

HKLM\Software\Microsoft\Foo\Bar 

Gibt es ein Werkzeug, das für mich zum Schlüssel navigiert, ohne dass ich selbst in den Ordnern navigieren muss?

48
Um meine 2 ¢ hinzuzufügen, habe ich vor einiger Zeit ein Programm geschrieben, um Tastendrucke zu simulieren, wenn das regelmäßige Einfügen nicht ausreichend war. Ich habe einen speziellen Modus für Registrierungsschlüssel hinzugefügt, damit Sie einen Registrierungspfad kopieren und den Hotkey drücken können, während er sich in Regedit befindet, damit er automatisch zu diesem Pfad navigiert. Später schrieb ich ein Programm, das einige Registrierungswartungen durchführte und eine Sprung-zu-Pfad-Funktion bereitstellen musste. Am Ende habe ich festgestellt, ob Regedit geöffnet ist. Wenn ja, sendet er die richtigen Tastenanschläge (ich habe die Funktion aus dem alten Programm kopiert), und wenn nicht, schrieb er an "… Regedit \ LastKey" und öffnete Regedit. Regedit springt von selbst. Synetech vor 10 Jahren 1
Sie können in der Windows-Feedback-App (unter Win10) abstimmen "Regedit sollte über Adressleistenfunktionalität verfügen". Der folgende Link funktioniert nur in Win10 Windows-Feedback:? Contextid = 79 & feedbackid = b11f8bdf-eaf4-4799-8e65-5161924ad22c & form = 1 & src = 1 Michael Freidgeim vor 7 Jahren 0
Windows 10 enthält jetzt eine Adressleiste im Registrierungseditor. [Siehe meine Antwort.] (Https://superuser.com/questions/115854/open-registry-directly-to-a-given-key/#1223675) Miscreant vor 6 Jahren 2

14 Antworten auf die Frage

59
mindless.panda

Dies kann nicht mit sich regedit.exeselbst oder einem seiner Befehlszeilenparameter erfolgen.

Microsoft bietet jedoch regjump.exeein kleines Dienstprogramm (zuvor von SysInternals) an, mit dem der Registrierungseditor für einen angegebenen Schlüssel geöffnet werden kann.

Nach der Installation können Sie den angegebenen Schlüssel wie folgt öffnen:

regjump HKEY_LOCAL_MACHINE\Software\Microsoft\Windows 

oder auch mit Abkürzungen:

regjump HKCU\Software\Microsoft\Windows 

Verfügbare Abkürzungen sind:

HKCR - HKEY_CLASSES_ROOT HKCU - HKEY_CURRENT_USER HKLM - HKEY_LOCAL_MACHINE HKU - HKEY_USERS HKCC - HKEY_CURRENT_CONFIG 
Funktioniert hervorragend mit [Launchy] (http://www.launchy.net/). :) Mateen Ulhaq vor 12 Jahren 0
Großartig. Wenn MS das Tool jetzt bereitstellen kann, warum können sie nicht einfach regedit ändern, um Befehlszeilenparameter zuzulassen? Zumindest win7 hat das noch nicht ... BmyGuest vor 8 Jahren 7
Beachten Sie, dass für Windows 10 Regjump mit Administratorrechten gestartet werden muss, damit es ordnungsgemäß funktioniert. Vladimir Reshetnikov vor 7 Jahren 2
Verwenden Sie `regjump -c`, um den Schlüssel aus der Zwischenablage zu öffnen. xmedeko vor 6 Jahren 0
Windows 10 enthält jetzt eine Adressleiste im Registrierungseditor. [Siehe meine Antwort.] (Https://superuser.com/questions/115854/open-registry-directly-to-a-given-key/#1223675) Miscreant vor 6 Jahren 0
12
Kez

Sie können dies tun, indem Sie ein einfaches VBScript auf Ihrem Desktop erstellen, ohne zusätzliche Software installieren zu müssen.

Das Skript setzt einfach den "zuletzt verwendeten" Schlüssel in der Registry, bevor er geöffnet wird.

Öffnen Sie den Editor, stecken Sie ihn hinein und speichern Sie ihn wie FooBar.vbszum Beispiel:

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 

In den Eigenschaften für die VBS-Datei können Sie angeben, dass während der Ausführung des Skripts keine Blackbox angezeigt wird, um das Bild etwas sauberer zu machen.

Wenn Sie Lust haben, können Sie das .vbs-Skript an einer anderen Stelle speichern und auf Ihrem Desktop eine Verknüpfung dazu erstellen. Sie könnten dann das Symbol ändern und es könnte hübsch aussehen (wenn Sie es wirklich wollten).

BEARBEITEN - Wenn Sie gefragt werden möchten, welchen Schlüssel Sie jedes Mal öffnen möchten, verwenden Sie stattdessen Folgendes:

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 
Wenn Sie den zu öffnenden Schlüssel ändern, muss das Skript jedes Mal geändert werden, es sei denn, es wurde als Befehlszeilenargument angegeben. Schöne Lösung, sehr nützlich. mindless.panda vor 14 Jahren 0
Nun, ich mag diese als Lösung, weil sie erweiterbar ist und einige grundlegende Skripte lehrt. Ich gehe davon aus, dass Sie ein Eingabefeld verwenden, weil das Ausführen eines Skripts über die Befehlszeile das Aufrufen über den Skripthost erfordert. Und so etwas wie "script / key / foo / bar" zu tun, ist nicht einfach für ein Skript in der Kommandozeile. mindless.panda vor 14 Jahren 0
Ich habe meine Kommentare gelöscht. Probieren Sie beide aus und sehen Sie, was am einfachsten ist :-) Kez vor 14 Jahren 0
6
Anuresh Kothari

Kopieren Sie den folgenden Text und speichern Sie ihn als Batchdatei und führen Sie ihn aus

@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 

Geben Sie den Pfad des Registrierungsschlüssels ein, den Sie öffnen möchten, wenn die Stapeldatei dazu auffordert, und drücken EnterSie. Dann können Sie regedit mit dem erforderlichen Registrierungsschlüsselpfad öffnen.

Ich musste das @ECHO OFF entfernen
, damit es unter Windows 8 funktioniert steampowered vor 8 Jahren 0
6
Miscreant

Windows 10 enthält jetzt die Adressleistenfunktion im Registrierungs-Editor:

Die Adressleiste des Registrierungs-Editors

Geben Sie einfach den Pfad in die Adressleiste ein und drücken Sie die Eingabetaste.


Die folgenden Abkürzungen funktionieren mit der Adressleiste:

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

Die HKCC - HKEY_CURRENT_CONFIGAbkürzung funktioniert also nicht (zumindest ab diesem Datum).


Sie können die Adressleiste wie in Windows Explorer durch Drücken von Ctrl+Loder aktivieren Alt+D.

Ich habe Fenster 10 und ich habe diese Adressleiste nicht. Und die beiden Abkürzungen funktionieren nicht. WORMSS vor 6 Jahren 0
@ WORMSS Das ist komisch. Sehen Sie nach, ob Sie einen `Address Bar`-Eintrag im` View`-Menü des Registrierungs-Editors haben. Miscreant vor 6 Jahren 0
Ich hatte überprüft, Nö, ich muss entweder (1) eine alte Version von RegEdit haben oder (2) es gibt eine zweite Version auf dem Rechner, aber nicht auf% PATH%, ich habe meinen Heim-PC mit Win10 überprüft Home hat bereits die Adressleiste. Work PC, auf dem Win10Pro ausgeführt wird, verfügt über das klassische RegEdit. Na ja, jetzt weiß ich es. WORMSS vor 6 Jahren 0
@WORMSS Möglicherweise hat Microsoft die Adressleiste im Update des Erstellers hinzugefügt. Miscreant vor 6 Jahren 0
vielleicht bricht CU etwas Software bei der Arbeit ab, also haben wir es nicht da ... Keine Ahnung, ob mein Heim-PC es hat .. Nie hatte ich mir die Mühe gemacht, zu schauen .. Danke für Ihre Hilfe. WORMSS vor 6 Jahren 0
3
Ak.

In RegEdit haben Sie die Möglichkeit, Pfade mit Lesezeichen zu versehen.

Wählen Sie aus dem oberen Menü

Favorites Add to Favorites

3
user285425

Ich benutze immer ein leistungsfähiges Makroprogramm ( QWin ), hauptsächlich um häufig verwendete Dinge zu tippen. QMenu kann auch Anwendungen ausführen.

Als ich dem Autor Gary Chanson von regjump erzählte und fragte, ob es möglich sein könnte, den Inhalt der Zwischenablage als Befehlsargument zu übergeben, wurde er aktualisiert, um den Inhalt des Zwischenablagepuffers als Variable übergeben zu können.

Wenn ich jetzt eine beliebige Taste in die Zwischenablage kopiere, muss ich nur den Kotkey für QMenu drücken und "J" eingeben, um direkt zu dieser Taste in Regedit zu gelangen.

Während das Vorstehende in XP funktioniert, schlägt QMenu in Win7 / 8 jedoch aufgrund der Einschränkungen des Betriebssystems bei der Ausführung von ausführbaren Dateien fehl. Während es funktionieren würde, wenn Sie qMenu als "RUN as admin" einrichten, müssen Sie jedes von mir aufgerufene Tastaturmakro genehmigen. Lösung? Setzen Sie QMenu auf RUN, um eine Verknüpfung für RegJump auszuführen, und setzen Sie die Verknüpfung auf "RUN als Administrator". (Sie können ein Argument an eine Verknüpfung übergeben, die es an das Programm weitergibt, das es startet.)

Wenn QMenu interessant klingt, habe ich unter bevhoward.com/WinTools.htm eine Seite zur Verwendung

Beachten Sie, während ich Garys Werkzeuge seit vielen Jahren verwende, haben verschiedene AV-Programme einige der Dateien als infiziert markiert ... Im Fall des aktualisierten QMenu wurde es von Avast markiert, aber das Problem sollte behoben sein ihr nächstes Update.

Ich hoffe, dass diese Informationen von Wert sind. Beverly Howard

Willkommen bei Super User! Das ist eine großartige Antwort, aber würden Sie etwas dagegen haben, einige der Informationen hinzuzufügen, die Sie auf der von Ihnen verlinkten Seite haben? Es ist alles gut und alles, aber es ist am besten, wenn es hier ist - auf diese Weise, wenn Sie Ihre Website wechseln oder ändern, ist die Antwort auf die Frage noch verfügbar. :) Thor vor 10 Jahren 0
2
therube

Nircmd kann es auch.

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 ist eine GUI zum Durchsuchen der Registrierung mit der Option, zum ausgewählten Schlüssel zu springen.

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

2
DaddyBeanDaddyBean

I have a set of services representing different instances of a bit of homegrown software; the service names all start with the name of the software, followed by certain instance-specific details.

ProgramName_Detail1A_Detail1B
ProgramName_Detail2A_Detail2B

The descriptions are frequently updated as the intended usage of each instance will change over time, but description can only be changed in the registry. With that in mind, the following .BAT code finds the first "ProgramName*" service and opens regedit with that first service already selected. (My service names contain no spaces; if yours do, some adaptation will be required.)

@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
William Hilsum

Mit dem Standard-Registrierungseditor allein ist dies nicht möglich.

Microsoft / Sysinternals verfügt jedoch über ein Tool namens Regjump, das genau das tut, was Sie brauchen - und zwar an der richtigen Stelle im Registrierungseditor.

1
Andrew Wyatt

Wenn Sie Regjump verwenden, sollten Sie eine Umgebungsvariable einrichten, z. B. REGJUMP = C: \ Pfad \ to \ regjump.exe. Dann können Sie Regjump über das Feld "Suche starten" im Startmenü von Windows Vista verwenden:

typing %REGJUMP% in Start Search box

[Möglicherweise müssen Sie zum Speicherort von regjump.exe navigieren und regjump.exe so einstellen, dass die Berechtigungsebene "Dieses Programm als Administrator ausführen" auf der Registerkarte "Eigenschaften"> "Kompatibilität" angezeigt wird. Dadurch wird sichergestellt, dass Regjump auf Computern mit Benutzerkontensteuerung ordnungsgemäß ausgeführt wird.

Oder fügen Sie dem Pfad die gesamte Sysinternals Suite hinzu. Nach meiner Erfahrung eine tolle Idee. usr vor 7 Jahren 0