Udostępnij przez


Symbole debugowania systemu Windows

Pliki symboli przechowują różne dane, które nie są niezbędne do uruchamiania plików binarnych, mogą być przydatne podczas debugowania. Symbole mogą obejmować nazwę symbolu, typ symbolu (jeśli dotyczy), adres przechowalni symboli (lub rejestr) oraz dowolne symbole nadrzędne lub podrzędne. Przykłady symboli obejmują nazwy zmiennych (lokalne i globalne), funkcje i dowolny punkt wejścia do modułu.

Debugger pobiera informacje o symbolach z plików symboli znajdujących się w lokalnym systemie plików lub które są ładowanych z zdalnego serwera symboli. W przypadku korzystania z serwera symboli debuger automatycznie używa poprawnej wersji pliku symboli do dopasowania modułu w obiekcie docelowym.

Lokalizowanie symboli dla debugerów systemu Windows

Symbole debugerów systemu Windows są dostępne z publicznego serwera symboli przez Internet. Debugery systemu Windows obejmują WinDbg (debuger trybu jądra i trybu użytkownika), debuger jądra (KD), debuger konsoli Microsoft (CDB) i Debuger symboliczny Microsoft NT (NTSD).

  • W przypadku debugowania w trybie użytkownika potrzebne są symbole aplikacji docelowej.

  • W przypadku debugowania w trybie jądra potrzebne są symbole sterownika, który debugujesz, a także symbole publiczne systemu Windows.

Można automatycznie ładować symbole za pomocą polecenia .symfix, które ustawia ścieżkę magazynu symboli. Aby uruchomić polecenie, musisz mieć dostęp do Internetu, gdy debuger jest uruchomiony. Następnie użyj .reload polecenia , aby ponownie załadować moduł i symbole.

Aby dowiedzieć się więcej na temat symboli, w tym obsługi WinDbg dla symboli Portable PDB, zobacz następujące artykuły:

Symbole dostępu podczas debugowania

W poniższych artykułach opisano sposób uzyskiwania dostępu do symboli podczas sesji debugowania. Wyjaśniają również, jak kontrolować opcje symboli debugera i dopasowywanie symboli.

Tip

Użyj polecenia !sym noisy, aby wyświetlić więcej szczegółów w trakcie ładowania symboli, co pomoże w rozwiązywaniu problemów z symbolami. Aby uzyskać więcej informacji, zobacz dokumentację poleceń programu !sym. For more information, see the !sym command reference.