Dobrze napisana aplikacja prawidłowo obsługuje błędy, szczegółowo powiadamiając użytkownika o błędzie, który zareagował i jak go naprawić, zamiast po cichu zawieść lub rzucać niejasny kod błędu i rezygnować. W tym poście opisano, jak śledzić zdarzenia „Odmowa dostępu” dla działań związanych z plikami i rejestrami w systemie za pomocą Monitora procesów.
(Mam już artykuł instruktażowy na temat korzystania z Monitora procesów na przykład; ten artykuł szczegółowo wyjaśnia, jak śledzić / śledzić wpisy „Odmowa dostępu”, konfigurując opcje filtrowania w Monitorze procesów).
1. Pobierz Monitor procesu ze strony Windows SysInternals.
2. Zaakceptuj umowę EULA, która pojawia się przy pierwszym uruchomieniu programu.
3. Process Monitor automatycznie rozpoczyna rejestrowanie zdarzeń. Zatrzymaj przechwytywanie, klikając przycisk Przechwytuj (CTRL + E) na pasku narzędzi.
Zestaw 5 przycisków widocznych po prawej stronie służy do wyświetlania 5 różnych zarejestrowanych działań.
(Wszystko i tak jest przechwytywane, ale możesz wybrać zawartość wyświetlaną w oknie wyników).
Rejestr
System plików
Aktywność sieciowa
Aktywność procesu i wątku
Profilowanie procesów
4. Większość podstawowych procedur rozwiązywania problemów wymaga, aby przyciski 1 lub 2 (lub oba, jeśli są wymagane) były włączone. Włącz przyciski 1 i 2, aby zacząć.
5. Z menu Filtr i kliknij Filtr (CTRL + L)
6. W oknie dialogowym Filtr monitora procesu kliknij przycisk Resetuj. Ma to na celu wyczyszczenie wszystkich filtrów, jeśli skonfigurowałeś wcześniej.
7. Następnie ustaw opcje filtrowania jako poniższe, aby przechwytywać wpisy „Odmowa dostępu”.
Wynik zawiera DENIED, a następnie Include
8. Kliknij Dodaj, a następnie OK.
9. Rozpocznij przechwytywanie, włączając przycisk przełączania Przechwyć na pasku narzędzi.
10. Teraz zacznij odtwarzać problem. Załóżmy, że próbujesz utworzyć klucz rejestru i napotkasz błąd. Spróbuj wykonać tę samą operację, gdy Process Monitor przechwytuje go w tle.
11. Po odtworzeniu problemu zobaczysz na liście Monitor procesu listę wpisów Odmowa dostępu (jeśli takie wystąpiły).
W tym przykładzie próbowałem utworzyć klucz rejestru w gałęzi HKEY_CLASSES_ROOT przy użyciu wiersza polecenia REG.EXE, a on zareagował na błąd odmowy dostępu. Oczywiście wiedziałem, że REG.EXE musi być uruchamiany z podwyższonym wierszem polecenia, aby tworzyć lub modyfikować klucze w obszarach systemowych rejestru. Służy to ilustracji.
12. Zanotuj nazwę procesu, operację, którą próbował wykonać, oraz plik / katalog lub ścieżkę rejestru, którą próbował zmodyfikować. W razie potrzeby zmień uprawnienia.
Należy jednak pamiętać, że nie wszystkie wpisy ODMOWIONEGO DOSTĘPU widoczne w Monitorze procesów mogą koniecznie stanowić problematyczne zdarzenia. Niektóre są całkowicie normalne. Jeśli nie masz pewności, co jest wyświetlane w dzienniku, zapisz dziennik w pliku PML. skompresuj go i wyślij do odpowiedniego zespołu wsparcia.