次の方法で共有


COM+ が戻り値を変更する方法

COM+ は、エラーを示す HRESULT の戻り値 (E_UNEXPECTED や E_FAIL など) を変更しません。 ただし、COM+ 機能を使用するオブジェクトが、成功を示す HRESULT 値 (S_OK、S_FALSE、NOERROR など) を返した場合、COM+ は呼び出し元に戻る前に HRESULT を COM+ エラー コードに変換することがあります。

たとえば、IObjectContext::SetComplete を呼び出した後にアプリケーションから S_OK が返されると、オブジェクトがコミットに失敗したトランザクションのルートである場合、HRESULT は CONTEXT_E_ABORTED に変換されます。

COM+ が HRESULT 値を変換すると、メソッドのすべての出力パラメーターがクリアされます。 返された参照が解放され、返されたオブジェクト ポインターの値が NULL に設定されます。

障害の分離と Failfast ポリシー

エラーの原因を見つける

エラー コードの解釈

COM+ でエラーを処理するための戦略

トラブルシューティング