UnDecorateSymbolName, fonction (dbghelp.h)
Décore le nom du symbole C++ décoré spécifié.
Syntaxe
DWORD IMAGEAPI UnDecorateSymbolName(
[in] PCSTR name,
[out] PSTR outputString,
[in] DWORD maxStringLength,
[in] DWORD flags
);
Paramètres
[in] name
Nom du symbole C++ décoré. Ce nom peut être identifié par le premier caractère du nom, qui est toujours un point d’interrogation (?).
[out] outputString
Pointeur vers une mémoire tampon de chaîne qui reçoit le nom non décoré.
[in] maxStringLength
Taille de la mémoire tampon UnDecoratedName , en caractères.
[in] flags
Options pour la façon dont le nom décoré n’est pas décoré. Ce paramètre peut être égal à zéro ou plusieurs des valeurs suivantes.
Valeur retournée
Si la fonction réussit, la valeur de retour est le nombre de caractères dans la mémoire tampon UnDecoratedName , sans inclure la marque de fin NULL.
Si la fonction échoue, la valeur de retour est égale à zéro. Pour récupérer des informations d’erreur étendues, appelez GetLastError.
Si la fonction échoue et retourne zéro, le contenu de la mémoire tampon UnDecoratedName est indéterminé.
Notes
Pour utiliser des symboles non décorées, appelez la fonction SymSetOptions avec l’option SYMOPT_UNDNAME .
Toutes les fonctions DbgHelp, telles que celle-ci, sont à thread unique. Par conséquent, les appels de plusieurs threads à cette fonction entraîneront probablement un comportement inattendu ou une altération 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.
Exemples
Pour obtenir un exemple, consultez Récupération de noms de symboles non décorées.
Spécifications
Plateforme cible | Windows |
En-tête | dbghelp.h |
Bibliothèque | Dbghelp.lib |
DLL | Dbghelp.dll |
Composant redistribuable | DbgHelp.dll 5.1 ou version ultérieure |