Partager via


SymGetSymbolFileW, fonction (dbghelp.h)

Recherche un fichier de symboles dans le chemin d’accès de symbole spécifié.

Syntaxe

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
);

Paramètres

[in, optional] hProcess

Handle du processus qui a été passé à l’origine à la fonction SymInitialize.

Si ce handle est 0, SymPath ne peut pas être NULL. Utilisez cette option pour charger un fichier de symboles sans appeler SymInitialize ou SymCleanup.

[in, optional] SymPath

Chemin d’accès aux symboles. Si ce paramètre est NULL ou une chaîne vide, la fonction utilise le chemin d’accès des symboles défini à l’aide de la fonction SymInitialize ou SymSetSearchPath.

[in] ImageFile

Nom du fichier image.

[in] Type

Type de fichier de symboles. Ce paramètre peut être l’une des valeurs suivantes.

Valeur Signification
sfImage
0
Fichier .exe ou .dll.
sfDbg
1
Fichier .dbg.
sfPdb
2
Fichier .pdb.
sfMpd
3
Réservé.

[out] SymbolFile

Pointeur vers une chaîne terminée par null qui reçoit le nom du fichier de symboles.

[in] cSymbolFile

Taille de la mémoire tampon SymbolFile, en caractères.

[out] DbgFile

Pointeur vers une mémoire tampon qui reçoit le chemin complet du fichier de symboles. Cette mémoire tampon doit être au moins MAX_PATH caractères.

[in] cDbgFile

Taille de la mémoire tampon DbgFile, en caractères.

Valeur de retour

Si le serveur localise un fichier de symboles valide, il retourne TRUE; sinon, elle retourne FALSE et GetLastError retourne une valeur qui indique pourquoi le fichier de symboles n’a pas été retourné.

Remarques

Toutes les fonctions DbgHelp, comme celle-ci, sont monothread. Par conséquent, les appels de plusieurs threads à cette fonction entraîneront probablement une altération inattendue du comportement ou de la mémoire. Pour éviter cela, vous devez synchroniser tous les appels simultanés de plusieurs threads vers cette fonction.

Pour appeler la version Unicode de cette fonction, définissez DBGHELP_TRANSLATE_TCHAR.

Note

L’en-tête dbghelp.h définit SymGetSymbolFile comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
plateforme cible Windows
d’en-tête dbghelp.h
bibliothèque Dbghelp.lib
DLL Dbghelp.dll
redistribuable DbgHelp.dll 6.3 ou version ultérieure

Voir aussi

fonctions DbgHelp

SymInitialize