Share via


RoOriginateErrorW, fonction (roerrorapi.h)

Signale une erreur et une chaîne informative à un débogueur attaché.

Syntaxe

BOOL RoOriginateErrorW(
  [in] HRESULT error,
  [in] UINT    cchMax,
  [in] PCWSTR  message
);

Paramètres

[in] error

Type : HRESULT

Code d’erreur associé à la condition d’erreur. Si l’erreur est un code de réussite, tel que S_OK, la fonction n’a aucun effet et retourne FALSE. Ce comportement permet d’appeler la fonction lorsqu’aucune erreur ne s’est produite sans provoquer de message d’erreur indésirable.

[in] cchMax

Type : UINT

Nombre maximal de caractères dans le message, à l’exclusion du caractère NUL de fin. Si la valeur est 0, la chaîne est lue jusqu’au premier caractère NUL ou à 512 caractères, selon la valeur la moins élevée. Si cchMax est supérieur à 512, tous les caractères après 512 sont ignorés.

[in] message

Type : PCWSTR

Chaîne informative pour aider les développeurs à corriger la condition d’erreur signalée. La longueur maximale est de 512 caractères, y compris le caractère NUL de fin ; les chaînes plus longues sont tronquées.

Si la chaîne est vide, la fonction réussit, mais aucune information d’erreur n’est signalée. Il est recommandé de toujours fournir une chaîne informative.

Si le message a la valeur NULL, la fonction réussit et signale la chaîne générique dans Winerror.h si disponible ou la chaîne générique associée à E_FAIL.

Cette fonction ne prend pas en charge les caractères NUL incorporés, donc seuls les caractères avant le premier NUL sont signalés.

La chaîne de message doit être localisée.

Valeur retournée

Type : BOOL

Code de retour Description
TRUE
Le message d’erreur a été signalé avec succès.
FALSE
le message a la valeur NULL ou pointe vers une chaîne vide, ou l’erreur est un code de réussite.

Notes

Utilisez la fonction RoOriginateErrorW pour signaler une condition d’erreur et un message correspondant à un débogueur. Cette fonction n’effectue pas de journalisation ou de suivi d’événements.

L’erreur est communiquée au débogueur en soulevant une exception structurée. Cette exception est interceptée par le débogueur attaché, et les paramètres d’exception contiennent à la fois l’erreur et la chaîne de message . Le débogueur peut afficher ces paramètres à l’utilisateur.

Selon la configuration actuelle du débogueur, la fonction RoOriginateErrorW peut entraîner l’arrêt de l’exécution dans le débogueur sur le site de l’exception.

Si l’indicateur UseSetErrorInfo est défini en appelant la fonction RoSetErrorReportingFlags et que le thread appelant a été initialisé dans COM, la fonction crée un objet d’erreur approprié qui prend en charge IRestrictedErrorInfo et l’associe au canal COM en appelant SetErrorInfo. Si le thread n’a pas été initialisé dans COM, l’appel réussit toujours sans erreur, mais l’erreur n’est pas associée au canal COM.

Note Il ne s’agit pas d’une version ANSI de la fonction RoOriginateErrorW . Les chaînes de message doivent être Unicode.
 

Spécifications

   
Client minimal pris en charge Windows 8 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2012 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête roerrorapi.h
Bibliothèque RuntimeObject.lib

Voir aussi

RO_ERROR_REPORTING_FLAGS

RoGetErrorReportingFlags

RoOriginateError

RoSetErrorReportingFlags

RoTransformErrorW