Co oznacza ścieżka „\ REGISTRY \ A \…” w logu Sysinternals Procmon?


22

Używam narzędzia Sysinternals Procmon do monitorowania dostępu do rejestru przez niektóre programy. Większość wpisów w dzienniku ma właściwość Path zaczynającą się od HKCU\…lub HKLM\…, która odpowiada gałęziom rejestru HKEY_CURRENT_USERi HKEY_LOCAL_MACHINEktórą można zobaczyć za pomocą Regedit. Ale niektóre wpisy mają ścieżkę zaczynającą się od \REGISTRY\A\…:

wprowadź opis zdjęcia tutaj

Czy mógłbyś wyjaśnić, która to część rejestru? Czy mogę to zobaczyć za pomocą Regedit lub innego narzędzia? Czy mogę uzyskać do niego dostęp programowo?

Korzystam z systemu Windows 8.1 Enterprise x64 .


AKTUALIZACJA: Skontaktowałem się z programistami Procmon i wskazali mi następujące zasoby MSDN obejmujące to pytanie:



Czy próbowałeś kliknąć prawym przyciskiem myszy i wybrać opcję Przejdź do ?
Synetech,

Tak, ale przeskakuje do niepowiązanego klucza.
Vladimir Reshetnikov,

Czy jesteś pewien, że to nie ma związku? Czy próbowałeś użyć przeskoku do podobnego klucza, aby sprawdzić, czy przeskakuje do podobnego klucza, czy do zupełnie innego klucza? Na przykład, jeśli registry\a\foobar\1skacze do, hkcu\software\blah\aale registry\a\foobar\2skacze do hklm\software\microsoft\internet explorer, wydaje się , że są one niezwiązane, ale jeśli drugi skacze hkcu\software\blah\b, to wydaje się, że są w jakiś sposób powiązane ; istnieje pewnego rodzaju mapowanie.
Synetech,

Hmm, myślę, że wiem, jak dokładnie dowiedzieć się, co to jest, ale będzie musiał poczekać do jutra (mojego czasu), kiedy będę mógł to przetestować…
Synetech

Odpowiedzi:



5

Co oznacza ścieżka „\ REGISTRY \ A \…” w dzienniku Sysinternals Procmon? Czy mógłbyś wyjaśnić, która to część rejestru? Czy mogę to zobaczyć za pomocą Regedit lub innego narzędzia? Czy mogę uzyskać do niego dostęp programowo?

Nie mogę odtworzyć tego, co widzisz w moim systemie, ale mogę ci powiedzieć, jak możesz dowiedzieć się, co to jest w twoim systemie. Możesz wyświetlić listę wszystkich gałęzi rejestru, które są obecnie zamontowane pod dowolną nazwą (w tym gałęzi systemowych, gałęzi użytkowników dla zalogowanych użytkowników oraz gałęzi załadowanych ręcznie lub programowo) przy następującym kluczu rejestru. Wyświetli zarówno wewnętrzną ścieżkę rejestru, jak i ścieżkę do pliku gałęzi (rysunek 1).

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist

Możesz użyć tego polecenia, aby zobaczyć, które usługi są hostowane przez określoną instancję svchost.exe. Użyłem pid (1240), którego używał w momencie twojego zrzutu ekranu; zastąp go bieżącym PID.

tasklist /svc /fi "pid eq 1240"

Rysunek 1 : Zrzut ekranu edytora rejestru z podświetlonym kluczem listy hivel, pokazujący zamontowane gałęzie rejestru

Zrzut ekranu edytora rejestru z podświetlonym kluczem listy kontrolnej


2
\REGISTRY\Anie jest wymieniony w hivelistkluczu. Odpowiedź od @ abs2run jest poprawna odpowiedź w ogóle.
Eryk Sun,

1
Chociaż informacje na ten temat hivelistsą interesujące i przydatne, nawet jeśli to nie wyjaśnia \REGISTRY\A.
binki

5

\REGISTRY\Ato ukryty gałąź rejestru do użytku przez aplikacje ze Sklepu Windows (znane również jako aplikacje w stylu Metro).


2
Kilka problemów: • To pytanie dotyczy gałęzi rejestru, ale dotyczy systemu Windows 7 , więc nie wygląda na to, że jest połączone z aplikacjami systemu Windows. • Nawet jeśli masz rację, co i jak dokładnie z niej korzystają aplikacje Windows; to znaczy, co stanowi, że zwykły rejestr tego nie robi? • Strona Wikipedii, do której prowadzisz link, w ogóle nie wspomina o rejestrze, więc nie możemy potwierdzić tego, co powiedziałeś, ani się o nim dowiedzieć.
Synetech,

W win10, jeśli wykonujesz dziennik rozruchu procmon i filtrujesz według „ścieżka zawiera \ rejestr \ a” i „operacja to klucz regload”, w szczegółach zobaczysz „ścieżkę gałęzi: system32 \ config \ BBI” i wiele „ścieżek gałęzi” : aktywacjastore.dat ”pliki przetworzone dla aplikacji Windows podczas uruchamiania. Czasami usługa dcomlaunch zajmuje dużo czasu w gałęzi BBI w zależności od liczby użytkowników.
js2010

4

W komentarzach muszę odpowiedzieć na własne pytanie.

Aby edytować prywatny ula, należy go wcześniej załadować.

W przypadku Visual Studio można to zrobić w następujący sposób:

https://social.msdn.microsoft.com/Forums/vstudio/en-US/f636ee47-1eb7-45ed-ae2a-674cbabb8b2c/clear-mru-list-in-visual-studio-2017?forum=visualstudiogeneral

Aby zwiększyć izolację i odporność VS 2017, korzysta on teraz z prywatnego rejestru. Wewnętrznie VS używa przekierowania i chociaż dla rozszerzeń VS (które są bibliotekami DLL) jest to przezroczyste, dla procesów zewnętrznych (które są exe), powoduje to, że nie działają.

Aby ręcznie zmienić wartości w gałęzi rejestru prywatnego, można użyć regedit.exe w celu załadowania gałęzi prywatnej. Musisz wybrać węzeł HKEY_USERS i kliknąć menu Plik> Załaduj gałąź… Wybierasz plik privateregistry.bin, nadajesz nazwę gałęzi (wpisałem „VS2017PrivateRegistry”) i teraz możesz zobaczyć, jak klucz 15.0_Config jest wypełniony jak zwykle (uwaga: po zakończeniu użyj Plik> Zwolnij gałąź):

zrzut ekranu

Aby programowo zmienić wartości w gałęzi rejestru prywatnego, musisz albo zbudować rozszerzenie VS, albo jeśli chcesz użyć zewnętrznego pliku exe, musisz użyć funkcji RegLoadAppKey lub unikać bezpośredniego korzystania z rejestru i użyć Menedżera ustawień zewnętrznych. Zobacz sekcję „Zmiana: zmniejsz wpływ rejestru” w Przełamywanie zmian w rozszerzalności programu Visual Studio 2017.

Nie zapomnij rozładować gałęzi w regedit przed uruchomieniem aplikacji.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.