Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Po załadowaniu pliku symboli do programu obsługi symboli aplikacja może użyć funkcji lokalizatora symboli, aby zwrócić informacje o symbolach dla określonego adresu. Te funkcje mogą również znaleźć nazwę pliku kodu źródłowego i lokalizację numeru wiersza dla adresu.
Wyliczanie plików symboli
Aby pobrać listę wszystkich plików symboli załadowanych według nazwy modułu, wywołaj funkcję SymEnumerateModules64. Aby zapoznać się z przykładem, zobacz Wyliczanie modułów symboli. Aby pobrać listę symboli dla danego modułu, wywołaj funkcję SymEnumSymbols. Aby zapoznać się z przykładem, zobacz Wyliczanie symboli.
Pobieranie symboli według adresu
Aby pobrać informacje symboliczne dla określonego adresu, użyj funkcjiSymFromAddr. Ta funkcja pobiera informacje i przechowuje je w strukturze SYMBOL_INFO. Ponieważ nazwy symboli są zmiennej długości, należy podać dodatkowe miejsce buforu po deklaracji struktury SYMBOL_INFO. Aby zapoznać się z przykładem, zobacz Pobieranie informacji o symbolach na podstawie adresu.
Należy pamiętać, że adres nie musi znajdować się na granicy symboli. Jeśli adres pochodzi po początku symbolu, ale przed końcem symbolu (początek symbolu i rozmiar symbolu), funkcja zlokalizuje symbol.
Pobieranie symboli według nazwy symboli
Aby pobrać informacje symboliczne w strukturze SYMBOL_INFO dla określonego modułu i nazwy symbolu, użyj funkcji SymFromName. Jeśli ustawiono ładowanie symboli odroczonych, SymFromName spróbuje załadować plik symboli dla modułu, jeśli nie został jeszcze załadowany. Aby określić nazwę modułu wraz z nazwą symbolu, użyj składni Module!SymName. Znak "!" rozdziela nazwę modułu z nazwy symbolu. Aby zapoznać się z przykładem, zobacz Pobieranie informacji o symbolach na podstawie nazwy.
Pobieranie numerów linii według adresu
Aby pobrać lokalizację kodu źródłowego dla określonego adresu, użyj funkcji SymGetLineFromAddr64. Ta funkcja wypełnia strukturę IMAGEHLP_LINE64 zawierającą nazwę pliku źródłowego i lokalizację numeru wiersza, do której odwołuje się określony adres. Aby zapoznać się z przykładem, zobacz Pobieranie informacji o symbolach według adresu.
Pobieranie numerów wierszy według nazwy symbolu
Aby pobrać lokalizację kodu źródłowego dla określonej nazwy symbolu, użyj funkcji SymGetLineFromName64. Ta funkcja jest podobna do SymGetSymFromName64, ale pobiera strukturę IMAGEHLP_LINE64. Aby użyć SymGetLineFromAddr64 lub SymGetLineFromName64, należy ustawić opcję wierszy ładowania (SYMOPT_LOAD_LINES) przy użyciu funkcji SymSetOptions. Aby zapoznać się z przykładem, zobacz Pobieranie informacji o symbolach wg nazwy.