Partager via


WerRegisterMemoryBlock, fonction (werapi.h)

Inscrit un bloc de mémoire à collecter lorsque Rapport d'erreurs Windows (WER) crée un rapport d’erreurs.

Syntaxe

HRESULT WerRegisterMemoryBlock(
  [in] PVOID pvAddress,
  [in] DWORD dwSize
);

Paramètres

[in] pvAddress

Adresse de départ du bloc de mémoire.

[in] dwSize

Taille du bloc de mémoire, en octets. La valeur maximale de ce paramètre est WER_MAX_MEM_BLOCK_SIZE octets.

Valeur retournée

Cette fonction retourne S_OK en cas de réussite ou un code d’erreur en cas d’échec, y compris les codes d’erreur suivants.

Code de retour Description
WER_E_INVALID_STATE L’état du processus n’est pas valide. Par exemple, le processus est en mode de récupération d’application.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) Le nombre de blocs de mémoire et de fichiers inscrits dépasse la limite.

Remarques

La mémoire inscrite avec cette fonction est uniquement ajoutée aux fichiers de tas ou de vidage plus volumineux. Cette mémoire n’est jamais ajoutée aux mini-vidages ou aux fichiers de vidage plus petits.

Pour les incidents et l’absence de réponse, le système d’exploitation fournit automatiquement un rapport d’erreurs (vous n’avez pas besoin de fournir de code de rapport d’erreurs dans votre application). Si vous utilisez cette fonction pour inscrire un bloc de mémoire, le système d’exploitation ajoute les informations de bloc de mémoire au fichier de vidage au moment de l’incident ou de la non-réponse. Le bloc de mémoire est ajouté au fichier de vidage pour le rapport uniquement lorsque des données supplémentaires sont demandées par le serveur.

Pour la création de rapports d’événements génériques, l’application doit appeler directement les fonctions de création de rapports d’événements génériques WER. Pour ajouter le bloc de mémoire à un rapport générique, appelez la fonction WerReportAddDump , puis appelez la fonction WerReportSubmit et spécifiez l’indicateur WER_SUBMIT_ADD_REGISTERED_DATA.

Pour supprimer le bloc de cette liste, appelez la fonction WerUnregisterMemoryBlock .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête werapi.h
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

WerUnregisterMemoryBlock, Rapport d'erreurs Windows