Share via


Fonction SymRegisterFunctionEntryCallback (dbghelp.h)

Inscrit une fonction de rappel à utiliser par la procédure de marche de la pile sur les ordinateurs Alpha.

Syntaxe

BOOL IMAGEAPI SymRegisterFunctionEntryCallback(
  [in] HANDLE                     hProcess,
  [in] PSYMBOL_FUNCENTRY_CALLBACK CallbackFunction,
  [in] PVOID                      UserContext
);

Paramètres

[in] hProcess

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

[in] CallbackFunction

Fonction de rappel SymRegisterFunctionEntryCallbackProc64 .

[in] UserContext

Valeur définie par l’utilisateur ou NULL. Cette valeur est simplement passée à la fonction de rappel. Normalement, ce paramètre est utilisé par une application pour passer un pointeur vers une structure de données qui permet à la fonction de rappel d’établir un contexte.

Valeur retournée

Si la fonction réussit, la valeur de retour est TRUE.

Si la fonction échoue, la valeur de retour est FALSE. Pour récupérer des informations d’erreur étendues, appelez GetLastError.

Remarques

La fonction SymRegisterFunctionEntryCallback64 permet à une application d’inscrire une fonction de rappel à utiliser par la procédure de marche de la pile. La procédure de marche de la pile appelle la fonction de rappel inscrite lorsqu’elle ne parvient pas à localiser une entrée de table de fonction pour une adresse. Dans la plupart des cas, la procédure de marche de la pile localise les entrées de la table de fonctions dans la table de fonction de l’image contenant l’adresse. Toutefois, dans les situations où les entrées de table de fonction ne se trouvent pas dans l’image, ce rappel permet au débogueur de fournir l’entrée de table de fonction à partir d’une autre source. Par exemple, le code généré au moment de l’exécution sur les ordinateurs Alpha peut définir des tables de fonctions dynamiques pour prendre en charge la gestion des exceptions et le suivi de la pile.

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.

Cette fonction remplace la fonction SymRegisterFunctionEntryCallback . Pour plus d’informations, consultez Mise à jour de la prise en charge de la plateforme. SymRegisterFunctionEntryCallback est défini comme suit dans Dbghelp.h.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymRegisterFunctionEntryCallback SymRegisterFunctionEntryCallback64
#else
BOOL
IMAGEAPI
SymRegisterFunctionEntryCallback(
    __in HANDLE hProcess,
    __in PSYMBOL_FUNCENTRY_CALLBACK CallbackFunction,
    __in_opt PVOID UserContext
    );
#endif

Configuration requise

Condition requise Valeur
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

Voir aussi

Fonctions DbgHelp

StackWalk64

SymRegisterFunctionEntryCallbackProc64