Verwenden von Makros für die Fehlerbehandlung

COM definiert eine Reihe von Makros, die das Arbeiten mit HRESULT-Werten erleichtern.

Die Fehlerbehandlungsmakros werden in der folgenden Tabelle beschrieben.

Makro Beschreibung
MAKE_HRESULT
Gibt ein HRESULT-Ergebnis unter Berücksichtigung des Schweregrads, des Facility-Codes und des Fehlercodes zurück, aus denen HRESULT besteht.
Hinweis: Das Aufrufen MAKE_HRESULT zur S_OK Überprüfung führt zu Leistungseinbußen. Sie sollten nicht routinemäßig MAKE_HRESULT für erfolgreiche Ergebnisse verwenden.
MAKE_SCODE
Gibt einen SCODE unter Berücksichtigung des Schweregrads bits, des Facility-Codes und des Fehlercodes zurück, aus denen SCODE besteht.
HRESULT_CODE
Extrahiert den Fehlercodeteil des HRESULT.
HRESULT_FACILITY
Extrahiert den Facility-Code des HRESULT.
HRESULT_SEVERITY
Extrahiert den Schweregrad des HRESULT.
SCODE_CODE
Extrahiert den Fehlercodeteil des SCODE.
SCODE_FACILITY
Extrahiert den Einrichtungscode des SCODE.
SCODE_SEVERITY
Extrahiert das Schweregradfeld des SCODE.
GELUNGEN
Testet den Schweregrad von SCODE oder HRESULT. gibt TRUE zurück, wenn der Schweregrad null und FALSE ist, wenn es eins ist.
FEHLGESCHLAGEN
Testet den Schweregrad von SCODE oder HRESULT. gibt TRUE zurück, wenn der Schweregrad 1 und FALSE ist, wenn er 0 ist.
IS_ERROR
Stellt einen generischen Test für Fehler für einen beliebigen status-Wert bereit.
HRESULT_FROM_WIN32
Ordnet einen Systemfehlercode einem HRESULT-Wert zu.
HRESULT_FROM_NT
Ordnet einen NT-status-Wert einem HRESULT-Wert zu.

Fehlerbehandlung in COM