Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
En översikt över symboler, inklusive användning av symbolfiler och symbolservrar, finns i Symboler.
Symbolnamn och Platser
Om du vill hitta platsen för en symbol med namnet använder du GetOffsetByName. Mer information om den syntax som används för att ange symbolnamn finns i Symbolsyntax och Symbolmatchning.
Om det exakta namnet på en symbol inte är känt, eller om flera symboler har samma namn, startar StartSymbolMatch en sökning efter symboler vars namn matchar ett visst mönster. Mer information om syntaxen finns i Syntax för jokertecken.
Om du vill hitta namnet på en symbol baserat på dess plats använder du GetNameByOffset. Om du vill hitta namnen på symboler i en modul nära en viss plats använder du GetNearNamebyOffset.
Obs När det är möjligt kvalificerar du symbolen med modulnamnet , till exempel mymodule!main. Annars, om symbolen inte finns (till exempel på grund av ett typografiskt fel) måste motorn läsa in och söka efter symbolerna för varje modul. Detta kan vara en långsam process, särskilt för felsökning i kernelläge. Om symbolnamnet har kvalificerats med ett modulnamn behöver motorn bara söka efter symbolerna för modulen.
En symbol identifieras unikt med hjälp av strukturen DEBUG_MODULE_AND_ID. Den här strukturen returneras av metoderna GetSymbolEntriesByName och GetSymbolEntriesByOffset, som söker efter symboler baserat på deras namn respektive plats.
Metoden GetSymbolEntryInformation returnerar en beskrivning av en symbol med hjälp av DEBUG_SYMBOL_ENTRY struktur.
Om du vill hitta förskjutningen av ett fält i en struktur använder du GetFieldOffset. Använd GetFieldNameom du vill hitta namnet på ett fält som anges i dess index i en struktur. Om du vill hitta namnet på en uppräkningskonstant med tanke på dess värde använder du GetConstantName.
Metoden GetSymbolInformation kan utföra flera begäranden om information om symboler.
Symbol-alternativ
Ett antal alternativ styr hur symbolerna läses in och tas bort. En beskrivning av de här alternativen finns i Ange symbolalternativ.
Symbolalternativ kan aktiveras med hjälp av AddSymbolOptionsoch inaktiveras med hjälp av RemoveSymbolOptions.
GetSymbolOptions returnerar de aktuella symbolalternativen. Om du vill ange alla symbolalternativ samtidigt använder du SetSymbolOptions.
ladda om symboler
När symbolfilerna har lästs in lagrar motorn symbolinformationen i en intern cache. Om du vill rensa cacheminnet använder du Läs inigen. Dessa symboler måste läsas in igen nu eller vid ett senare tillfälle.
syntetiska symboler
syntetiska symboler är ett sätt att märka en godtycklig adress för enkel referens. Syntetiska symboler kan skapas i valfri befintlig modul. Metoden AddSyntheticSymbol skapar en ny syntetisk symbol. Syntetiska symboler kan tas bort med RemoveSyntheticSymbol. Om du läser in symbolerna för modulen igen tas alla syntetiska symboler som är associerade med modulen bort.
symbolsökväg
Om du vill lägga till en katalog- eller symbolserver i symbolsökvägen använder du metoden AppendSymbolPath. Hela symbolsökvägen returneras av GetSymbolPath- och kan ändras med hjälp av SetSymbolPath.