次の方法で共有


WsCreateFaultFromError 関数 (webservices.h)

指定したエラー オブジェクトから WS_FAULT を構築します。

構文

HRESULT WsCreateFaultFromError(
  [in]  WS_ERROR            *error,
  [in]  HRESULT             faultErrorCode,
  [in]  WS_FAULT_DISCLOSURE faultDisclosure,
  [in]  WS_HEAP             *heap,
  [out] WS_FAULT            *fault
);

パラメーター

[in] error

エラーを構築するエラー オブジェクトを表す WS_ERROR 構造体へのポインター。

[in] faultErrorCode

失敗した関数から返された HRESULT エラー コード。 HRESULT 値を成功コードにすることはできません。

このエラー コードは、エラーに直接含まれることはありませんが、エラー オブジェクトにエラー文字列が含まれていない場合は、エラー文字列を作成するためのフォールバック メカニズムとして使用されます。

[in] faultDisclosure

WS_FAULT_DISCLOSURE エラー オブジェクトからエラー オブジェクトにコピーされる情報を制御する列挙体です。

[in] heap

返された障害オブジェクトのメモリを割り当てるヒープを表すWS_HEAP構造体へのポインター。

[out] fault

返された障害オブジェクトを表す WS_FAULT 構造体へのポインター。 エラー オブジェクトのフィールドは、指定されたヒープ リソースを解放するために WsFreeHeap または WsResetHeap が呼び出されるまで有効です。

戻り値

関数が成功すると、NO_ERRORが返されます。それ以外の場合は、HRESULT エラー コードが返されます。

リターン コード 説明
E_INVALIDARG
1 つ以上の引数が無効です。
E_OUTOFMEMORY
操作を完了するにはメモリが不足しています。
その他のエラー
この関数は、上記以外のエラーを返す場合があります。

注釈

エラー オブジェクトにエラーが含まれている場合 (つまり、 WS_FAULT_ERROR_PROPERTY_ID のWS_FAULT_ERROR_PROPERTY_FAULT値が NULL 以外の場合)、そのエラーが選択され、返されたエラーが作成されます。

エラー オブジェクトにエラーが含まれていない場合 (WS_FAULT_ERROR_PROPERTY_FAULTは NULL)、一般的なエラー コード (および理由テキストなし) を含む汎用エラーが選択され、返されたエラーが作成されます。

選択したエラーに理由テキストが含まれていない場合、エラー理由テキストは 、開示 パラメーターの値に従って構築されます。

  • WS_FULL_FAULT_DISCLOSURE エラー オブジェクトに存在するすべてのエラー文字列が追加され、理由テキストが形成されます。 文字列がない場合は、 errorCode パラメーターに関連付けられている文字列が使用されます。
  • WS_MINIMAL_FAULT_DISCLOSURE 汎用エラー文字列が使用されます。

既定では、エラー オブジェクト内の言語に依存する情報の言語は、現在のユーザーの既定の UI 言語です。 ただし、WS_ERROR_PROPERTY_LANGID プロパティを設定することで言語を変更できます。 WS_ERROR_PROPERTY_ID列挙を参照してください。

要件

   
サポートされている最小のクライアント Windows 7 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー webservices.h
Library WebServices.lib
[DLL] WebServices.dll