Share via


SymSearch-Funktion (dbghelp.h)

Sucht nach PDB-Symbolen, die die angegebenen Kriterien erfüllen.

Syntax

BOOL IMAGEAPI SymSearch(
  [in]           HANDLE                         hProcess,
  [in]           ULONG64                        BaseOfDll,
  [in, optional] DWORD                          Index,
  [in, optional] DWORD                          SymTag,
  [in, optional] PCSTR                          Mask,
  [in, optional] DWORD64                        Address,
  [in]           PSYM_ENUMERATESYMBOLS_CALLBACK EnumSymbolsCallback,
  [in, optional] PVOID                          UserContext,
  [in]           DWORD                          Options
);

Parameter

[in] hProcess

Ein Handle für einen Prozess. Dieses Handle muss zuvor an die SymInitialize-Funktion übergeben worden sein.

[in] BaseOfDll

Die Basisadresse des Moduls. Wenn dieser Wert 0 ist und Mask ein Ausrufezeichen (!) enthält, sucht die Funktion moduleübergreifend. Wenn dieser Wert 0 ist und Mask kein Ausrufezeichen enthält, verwendet die Funktion den bereich, der von der SymSetContext-Funktion eingerichtet wurde.

[in, optional] Index

Ein eindeutiger Wert für das Symbol.

[in, optional] SymTag

Die PDB-Klassifizierung. Diese Werte werden in Dbghelp.h im SymTagEnum-Enumerationstyp definiert. Beschreibungen finden Sie in der PDB-Dokumentation.

[in, optional] Mask

Ein Feldhalterausdruck, der die Namen der aufzuzählenden Symbole angibt. Um einen Modulnamen anzugeben, verwenden Sie die ! Modsyntax .

[in, optional] Address

Die Adresse des Symbols.

[in] EnumSymbolsCallback

Eine SymEnumSymbolsProc-Rückruffunktion , die die Symbolinformationen empfängt.

[in, optional] UserContext

Ein benutzerdefinierter Wert, der an die Rückruffunktion ( NULL) übergeben wird. Dieser Parameter wird in der Regel von einer Anwendung verwendet, um einen Zeiger an eine Datenstruktur zu übergeben, die Kontext für die Rückruffunktion bereitstellt.

[in] Options

Die Optionen, die das Verhalten dieser Funktion steuern.

Wert Bedeutung
SYMSEARCH_ALLITEMS
0x08
Schließen Sie alle Symbole und andere Daten in die PDB-Dateien ein.

DbgHelp 6.6 und früher: Dieser Wert wird nicht unterstützt.

SYMSEARCH_GLOBALSONLY
0x04
Suchen Sie nur nach globalen Symbolen.
SYMSEARCH_MASKOBJS
0x01
Nur zur internen Verwendung.
SYMSEARCH_RECURSE
0x02
Rekursieren Sie von oben, um alle Symbole zu finden.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE.

Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen abzurufen.

Hinweise

Alle DbgHelp-Funktionen, z. B. diese, sind single threaded. Daher führen an diese Funktion gerichtete Aufrufe mehrerer Threads wahrscheinlich zu unerwartetem Verhalten oder einer Beschädigung des Speichers. Um dies zu vermeiden, müssen Sie alle an diese Funktion gerichteten gleichzeitigen Aufrufe mehrerer Threads synchronisieren.

Um die Unicode-Version dieser Funktion aufzurufen, definieren Sie DBGHELP_TRANSLATE_TCHAR.

Anforderungen

   
Zielplattform Windows
Kopfzeile dbghelp.h
Bibliothek Dbghelp.lib
DLL Dbghelp.dll
Verteilbare Komponente DbgHelp.dll 6.2 oder höher

Weitere Informationen

DbgHelp-Funktionen

SymEnumSymbolsProc