Freigeben über


RoTransformError-Funktion (roerrorapi.h)

Meldet einen geänderten Fehler und eine informative Zeichenfolge an einen angefügten Debugger.

Syntax

BOOL RoTransformError(
  [in] HRESULT oldError,
  [in] HRESULT newError,
  [in] HSTRING message
);

Die Parameter

[in] oldError

Typ: HRESULT-

Der ursprüngliche Fehlercode, der der Fehlerbedingung zugeordnet ist.

[in] newError

Typ: HRESULT-

Ein anderer Fehlercode, der der Fehlerbedingung zugeordnet werden soll. Wenn "oldError " und "newError " identisch sind oder beide Erfolgscodes wie S_OK sind, hat die Funktion keine Auswirkung und gibt FALSCH zurück.

[in] message

Typ: HSTRING

Eine informative Zeichenfolge, mit der Entwickler die gemeldete Fehlerbedingung korrigieren können. Die maximale Länge beträgt 512 Zeichen, einschließlich des nachfolgenden Nullzeichens; längere Zeichenfolgen werden abgeschnitten.

Wenn die Zeichenfolge leer ist, wird die Funktion erfolgreich ausgeführt, aber es werden keine Fehlerinformationen gemeldet. Es wird empfohlen, immer eine informative Zeichenfolge anzugeben.

Wenn die NachrichtNULL ist, wird die Funktion erfolgreich ausgeführt und meldet die generische Zeichenfolge in Winerror.h, falls verfügbar oder die generische Zeichenfolge, die E_FAIL zugeordnet ist.

Obwohl es sich bei der Nachrichtenzeichenfolge um einen HSTRING handelt, unterstützt die RoTransformError-Funktion keine eingebetteten NULL-Zeichen, sodass nur die Zeichen vor dem ersten Null-Wert gemeldet werden.

Rückgabewert

Typ: BOOL-

Rückgabecode Description
TRUE
Die Fehlermeldung wurde erfolgreich gemeldet.
FALSCH
Die Nachricht ist NULL oder verweist auf eine leere Zeichenfolge, oder oldError und newError sind identisch, oder beide sind Erfolgscodes.

Bemerkungen

Verwenden Sie die RoTransformError-Funktion , um einen benutzerdefinierten Fehlercode für eine vorhandene Fehlerbedingung zu ersetzen. Wenn beispielsweise die aktuelle Fehlerbedingung E_FAIL ist, können Sie einen spezifischeren Fehlercode wie E_FILENOTFOUND ersetzen und den transformierten Fehler an einen angefügten Debugger melden.

Das Verhalten der RoTransformError-Funktion entspricht andernfalls der RoTransformErrorW-Funktion .

Wenn das UseSetErrorInfo-Flag durch Aufrufen der RoSetErrorReportingFlags-Funktion festgelegt wird und der aufrufende Thread in COM initialisiert wurde, erstellt die Funktion ein entsprechendes Fehlerobjekt, das IRestrictedErrorInfo unterstützt und dem COM-Kanal durch Aufrufen von SetErrorInfo zuordnet. Wenn der Thread nicht in COM initialisiert wurde, wird der Aufruf ohne Fehler weiterhin erfolgreich ausgeführt, der Fehler wird jedoch nicht mit dem COM-Kanal verknüpft.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 8 [Desktop-Apps | UWP-Apps]
Mindestanforderungen für unterstützte Server Windows Server 2012 [Desktop-Apps | UWP-Apps]
Zielplattform Fenster
Header roerrorapi.h
Library mincore.lib

Siehe auch

RO_ERROR_REPORTING_FLAGS

RoGetErrorReportingFlags

RoOriginateError-

RoSetErrorReportingFlags-

RoTransformErrorW-