Freigeben über


SymGetSymbolFileW-Funktion (dbghelp.h)

Sucht eine Symboldatei im angegebenen Symbolpfad.

Syntax

BOOL IMAGEAPI SymGetSymbolFileW(
  [in, optional] HANDLE hProcess,
  [in, optional] PCWSTR SymPath,
  [in]           PCWSTR ImageFile,
  [in]           DWORD  Type,
  [out]          PWSTR  SymbolFile,
  [in]           size_t cSymbolFile,
  [out]          PWSTR  DbgFile,
  [in]           size_t cDbgFile
);

Parameter

[in, optional] hProcess

Ein Handle an den Prozess, der ursprünglich an die SymInitialize-Funktion übergeben wurde.

Wenn dieses Handle 0 ist, kann SymPath- nicht NULL-werden. Verwenden Sie diese Option, um eine Symboldatei zu laden, ohne SymInitialize oder SymCleanup-aufzurufen.

[in, optional] SymPath

Der Symbolpfad. Wenn dieser Parameter NULL- oder eine leere Zeichenfolge ist, verwendet die Funktion den Symbolpfad, der mithilfe der SymInitialize oder SymSetSearchPath--Funktion festgelegt wurde.

[in] ImageFile

Der Name der Bilddatei.

[in] Type

Der Typ der Symboldatei. Dieser Parameter kann einer der folgenden Werte sein:

Wert Bedeutung
sfImage-
0
Eine .exe- oder .dll datei.
sfDbg-
1
Eine DBG-Datei.
sfPdb-
2
Eine PDB-Datei.
sfMpd-
3
Reserviert.

[out] SymbolFile

Ein Zeiger auf eine mit Null beendete Zeichenfolge, die den Namen der Symboldatei empfängt.

[in] cSymbolFile

Die Größe des SymbolFile- Puffers in Zeichen.

[out] DbgFile

Ein Zeiger auf einen Puffer, der den vollqualifizierten Pfad zur Symboldatei empfängt. Dieser Puffer muss mindestens MAX_PATH Zeichen sein.

[in] cDbgFile

Die Größe des DbgFile- Puffers in Zeichen.

Rückgabewert

Wenn der Server eine gültige Symboldatei findet, wird TRUE-zurückgegeben; andernfalls wird FALSE zurückgegeben, und GetLastError gibt einen Wert zurück, der angibt, warum die Symboldatei nicht zurückgegeben wurde.

Bemerkungen

Alle DbgHelp-Funktionen, z. B. diese, sind single threaded. Daher führen Aufrufe von mehr als einem Thread zu dieser Funktion wahrscheinlich zu unerwartetem Verhalten oder Speicherbeschädigung. Um dies zu vermeiden, müssen Sie alle gleichzeitigen Aufrufe von mehr als einem Thread mit dieser Funktion synchronisieren.

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

Anmerkung

Der dbghelp.h-Header definiert SymGetSymbolFile als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Zielplattform- Fenster
Header- dbghelp.h
Library Dbghelp.lib
DLL- Dbghelp.dll
redistributable DbgHelp.dll 6.3 oder höher

Siehe auch

DbgHelp-Funktionen

SymInitialize-