次の方法で共有


RoOriginateErrorW 関数 (roerrorapi.h)

エラーと有益な文字列をアタッチされたデバッガーに報告します。

構文

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

パラメーター

[in] error

型: HRESULT

エラー条件に関連付けられているエラー コード。 error成功コード (S_OK など) の場合、関数は無効であり、FALSE を返します。 この動作により、不要なエラー メッセージを発生させることなく、エラーが発生しなかった場合に関数を呼び出すことができます。

[in] cchMax

型: UINT

終了する NUL 文字を除く、メッセージ内の最大文字数。 値が 0 の場合、文字列は最初の NUL 文字または 512 文字のいずれか小さい方に読み取られます。 cchMax が 512 より大きい場合、512 より後のすべての文字は無視されます。

[in] message

種類: PCWSTR

開発者が報告されたエラー状態を修正するのに役立つ有益な文字列。 最大長は、末尾の NUL 文字を含めて 512 文字です。長い文字列は切り捨てられます。

文字列が空の場合、関数は成功しますが、エラー情報は報告されません。 常に有益な文字列を指定することをお勧めします。

messageNULL の場合、関数は成功し、使用可能な場合は Winerror.h のジェネリック文字列、またはE_FAILに関連付けられているジェネリック文字列を報告します。

この関数は埋め込み NUL 文字をサポートしていないため、最初の NUL より前の文字のみが報告されます。

メッセージ文字列はローカライズする必要があります。

戻り値

種類: BOOL

リターン コード 説明
TRUE
エラー メッセージが正常に報告されました。
FALSE
messageNULL であるか、空の文字列を指しているか、 エラー が成功コードです。

解説

RoOriginateErrorW 関数を使用して、エラー状態と対応するメッセージをデバッガーに報告します。 この関数では、ログ記録やイベント トレースは実行されません。

エラーは、構造化例外を発生させることによってデバッガーに伝達されます。 この例外はアタッチされたデバッガーによってキャッチされ、例外パラメーターにはエラーと メッセージ 文字列の両方が含まれます。 デバッガーは、これらのパラメーターをユーザーに表示する場合があります。

デバッガーの現在の構成によっては、 RoOriginateErrorW 関数によって、例外のサイトでデバッガーで実行が停止する場合があります。

UseSetErrorInfo フラグが RoSetErrorReportingFlags 関数を呼び出すことによって設定され、呼び出し元のスレッドが COM で初期化されている場合、関数は IRestrictedErrorInfo をサポートする適切なエラー オブジェクトを作成し、SetErrorInfo を呼び出して COM チャネルに関連付けます。 スレッドが COM に初期化されていない場合でも、呼び出しはエラーなしで成功しますが、エラーは COM チャネルに関連付けされません。

メモ これは 、RoOriginateErrorW 関数の ANSI バージョンです。 メッセージ文字列は Unicode である必要があります。
 

要件

   
サポートされている最小のクライアント Windows 8 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー roerrorapi.h
Library RuntimeObject.lib

関連項目

RO_ERROR_REPORTING_FLAGS

RoGetErrorReportingFlags

RoOriginateError

RoSetErrorReportingFlags

RoTransformErrorW