PSYMBOL_REGISTERED_CALLBACK fonction de rappel (dbghelp.h)
Fonction de rappel définie par l’application utilisée avec la fonction SymRegisterCallback64 . Il est appelé par le gestionnaire de symboles.
Le type PSYMBOL_REGISTERED_CALLBACK64 définit un pointeur vers cette fonction de rappel. SymRegisterCallbackProc64 est un espace réservé pour le nom de fonction défini par l’application.
Syntaxe
PSYMBOL_REGISTERED_CALLBACK PsymbolRegisteredCallback;
BOOL PsymbolRegisteredCallback(
[in] HANDLE hProcess,
[in] ULONG ActionCode,
[in, optional] PVOID CallbackData,
[in, optional] PVOID UserContext
)
{...}
Paramètres
[in] hProcess
Handle du processus qui a été passé à l’origine à la fonction SymInitialize .
[in] ActionCode
Code de rappel. Ce paramètre peut prendre les valeurs suivantes.
Valeur | Signification |
---|---|
|
Affichez des informations détaillées.
Le paramètre CallbackData est un pointeur vers une chaîne. |
|
Le chargement différé des symboles a commencé. Pour annuler le chargement de symboles, retournez TRUE.
Le paramètre CallbackData est un pointeur vers une structure IMAGEHLP_DEFERRED_SYMBOL_LOAD64 . |
|
Le chargement différé des symboles est terminé.
Le paramètre CallbackData est un pointeur vers une structure IMAGEHLP_DEFERRED_SYMBOL_LOAD64 . |
|
Échec du chargement différé des symboles.
Le paramètre CallbackData est un pointeur vers une structure IMAGEHLP_DEFERRED_SYMBOL_LOAD64 . Le gestionnaire de symboles tente de charger à nouveau les symboles si la fonction de rappel définit le membre FileName de cette structure. |
|
Le chargement différé des symboles est partiellement terminé. Le chargeur de symboles ne peut pas lire l’en-tête d’image à partir du fichier image ou du module spécifié.
Le paramètre CallbackData est un pointeur vers une structure IMAGEHLP_DEFERRED_SYMBOL_LOAD64 . Le gestionnaire de symboles tente de charger à nouveau les symboles si la fonction de rappel définit le membre FileName de cette structure. DbgHelp 5.1 : Cette valeur n’est pas prise en charge. |
|
Le chargement différé des symboles a démarré.
Le paramètre CallbackData est un pointeur vers une structure IMAGEHLP_DEFERRED_SYMBOL_LOAD64 . |
|
Des symboles en double ont été trouvés. Cette raison est utilisée uniquement au format COFF ou CodeView.
Le paramètre CallbackData est un pointeur vers une structure IMAGEHLP_DUPLICATE_SYMBOL64 . Pour spécifier le symbole à utiliser, définissez le membre SelectedSymbol de cette structure. |
|
Affichez des informations détaillées. Si vous ne gérez pas cet événement, les informations sont réinsentrées via l’événement CBA_DEBUG_INFO.
Le paramètre CallbackData est un pointeur vers une structure IMAGEHLP_CBA_EVENT . |
|
L’image chargée a été lue.
Le paramètre CallbackData est un pointeur vers une structure IMAGEHLP_CBA_READ_MEMORY . La fonction de rappel doit lire le nombre d’octets spécifié par le membre d’octets dans la mémoire tampon spécifiée par le membre buf et mettre à jour le membre bytesread en conséquence. |
|
Les options de symbole ont été mises à jour. Pour récupérer les options actuelles, appelez la fonction SymGetOptions .
Le paramètre CallbackData doit être ignoré. |
|
Affichez des informations détaillées pour le serveur source. Si vous ne gérez pas cet événement, les informations sont réinsentrées via l’événement CBA_DEBUG_INFO.
Le paramètre CallbackData est un pointeur vers une structure IMAGEHLP_CBA_EVENT . DbgHelp 6.6 et versions antérieures : Cette valeur n’est pas prise en charge. |
|
Affichez des informations détaillées pour le serveur source.
Le paramètre CallbackData est un pointeur vers une chaîne. DbgHelp 6.6 et versions antérieures : Cette valeur n’est pas prise en charge. |
|
Les symboles ont été déchargés.
Le paramètre CallbackData doit être ignoré. |
[in, optional] CallbackData
Données de l’opération. Le format de ces données dépend de la valeur du paramètre ActionCode .
Si la fonction de rappel a été inscrite auprès de SymRegisterCallbackW64, les données sont une chaîne Unicode ou une structure de données. Sinon, les données utilisent le format ANSI.
[in, optional] UserContext
Valeur définie par l’utilisateur spécifiée dans SymRegisterCallback64, ou NULL. En règle générale, 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
Pour indiquer la réussite de la gestion du code, retourne TRUE.
Pour indiquer l’échec de la gestion du code, retournez FALSE. Si votre code ne gère pas un code particulier, vous devez également retourner FALSE. (Le retour de TRUE dans ce cas peut avoir des conséquences inattendues.)
Remarques
L’application appelante est appelée via la fonction de rappel inscrite à la suite d’un autre appel à l’une des fonctions de gestionnaire de symboles. L’application appelante doit être préparée pour les effets secondaires possibles que cela peut provoquer. Si l’application n’a qu’une seule fonction de rappel utilisée par plusieurs threads, il peut être nécessaire de synchroniser certains types d’accès aux données dans le contexte de la fonction de rappel.
Cette fonction de rappel remplace la fonction de rappel PSYMBOL_REGISTERED_CALLBACK . PSYMBOL_REGISTERED_CALLBACK est défini comme suit dans Dbghelp.h.
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define PSYMBOL_REGISTERED_CALLBACK PSYMBOL_REGISTERED_CALLBACK64
#else
typedef BOOL
(CALLBACK *PSYMBOL_REGISTERED_CALLBACK)(
__in HANDLE hProcess,
__in ULONG ActionCode,
__in_opt PVOID CallbackData,
__in_opt PVOID UserContext
);
#endif
Pour obtenir un exemple plus détaillé, consultez Obtenir des notifications.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | dbghelp.h |
Composant redistribuable | DbgHelp.dll 5.1 ou version ultérieure |