Nous recommandons d’utiliser Visual Studio 2017

_CrtSetReportHook

 

Pour obtenir la dernière documentation sur Visual Studio 2017, consultez Documentation Visual Studio 2017.

Installe une fonction définie par le client en traitement dans le processus de création de rapports (version debug uniquement) débogage du runtime C.

_CRT_REPORT_HOOK _CrtSetReportHook(   
   _CRT_REPORT_HOOK reportHook   
);  

Paramètres

reportHook
Nouvelle fonction de rapport défini par le client pour raccorder la durée d’exécution C déboguer le processus de création de rapports.

Retourne la dernière fonction de rapport défini par le client.

_CrtSetReportHookpermet à une application d’utiliser sa propre fonction de création de rapports dans la bibliothèque de débogage du runtime C processus de création de rapports. Par conséquent, chaque fois que _CrtDbgReport est appelée pour générer un rapport de débogage, l’application de création de rapports fonction est appelée en premier. Cette fonctionnalité permet à une application effectuer des opérations telles que le filtrage des rapports de débogage afin de pouvoir vous concentrer sur les types d’allocation spécifiques ou envoyer un rapport vers les destinations non disponibles à l’aide de _CrtDbgReport. Lors de la _DEBUG n’est pas défini, les appels à _CrtSetReportHook sont supprimés lors du prétraitement.

Pour obtenir une version plus robuste de _CrtSetReportHook, consultez _CrtSetReportHook2.

Le _CrtSetReportHook fonction installe la nouvelle déclaration de fonction spécifiée dans défini par le client reportHook et retourne le raccordement défini par le client précédent. L’exemple suivant montre comment un raccordement de rapport défini par le client doit être prototypé :

int YourReportHook( int reportType, char *message, int *returnValue );  

reportType est le type de rapport de débogage (_CRT_WARN, _CRT_ERROR, ou _CRT_ASSERT), message est le message utilisateur entièrement assemblé débogage doit être contenu dans le rapport, et returnValue est la valeur spécifiée par le client défini reporting (fonction) qui doit être retournée par _CrtDbgReport. Pour obtenir une description complète des types de rapports disponibles, consultez le _CrtSetReportMode (fonction).

Si la fonction de rapport défini par le client gère intégralement le message de débogage telles qu’aucun rapport supplémentaire n’est requise, la fonction doit retourner TRUE. Lorsque la fonction retourne FALSE, _CrtDbgReport est appelée pour générer le rapport de débogage à l’aide des paramètres actuels pour le type de rapport, le mode et le fichier. En outre, en spécifiant le _CrtDbgReport retourner la valeur de returnValue, l’application peut également contrôler si une interruption de débogage se produit. Pour obtenir une description complète de la façon dont le rapport de débogage est configuré et généré, consultez _CrtSetReportMode, _CrtSetReportFile, et _CrtDbgReport.

Pour plus d’informations sur l’utilisation d’autres fonctions d’exécution capable de raccordement et écrire votre propre client défini les fonctions de raccordement, consultez fonction de raccordement déboguer écrire.

System_CAPS_ICON_note.jpg Remarque

Si votre application est compilée avec /clr et la fonction est appelée une fois que l’application a quitté principale, le CLR lève une exception si la fonction de création de rapports appelle des fonctions CRT.

RoutineEn-tête requis
_CrtSetReportHook<crtdbg.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility dans l’introduction.

Les versions Debug de les bibliothèques Runtime C uniquement.

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.

Routines de débogage
_CrtGetReportHook

Afficher: