RoOriginateErrorW 函式 (roerrorapi.h)
向附加偵錯工具報告錯誤和資訊字串。
語法
BOOL RoOriginateErrorW(
[in] HRESULT error,
[in] UINT cchMax,
[in] PCWSTR message
);
參數
[in] error
類型: HRESULT
與錯誤條件相關聯的錯誤碼。 如果 錯誤 是成功的程式碼,例如 S_OK,則函式沒有任何作用並傳回 FALSE。 當未發生任何錯誤時,此行為會啟用呼叫函式,而不會造成不必要的錯誤訊息。
[in] cchMax
類型: UINT
訊息中的字元數上限,不包括終止的 NUL字元。 如果值為 0,則字串會讀取到第一個 NUL 字元或 512 個字元,但每一個字元都較少。 如果 cchMax 大於 512,則會忽略 512 之後的所有字元。
[in] message
類型: PCWSTR
資訊字串,可協助開發人員更正回報的錯誤狀況。 最大長度為 512 個字元,包括尾端 NUL 字元;會截斷較長的字串。
如果字串是空的,則函式會成功,但不會報告任何錯誤資訊。 建議您一律提供資訊字串。
如果 message 為 Null,則函式會成功並報告 Winerror.h 中的泛型字串,如果有的話,或 與E_FAIL相關聯的泛型字串。
此函式不支援內嵌 NUL 字元,因此只會報告第一個 NUL 之前的字元。
訊息字串應當地語系化。
傳回值
類型: BOOL
傳回碼 | 描述 |
---|---|
|
已成功回報錯誤訊息。 |
|
訊息 為 Null 或指向空字串,或 錯誤 為成功碼。 |
備註
使用 RoOriginateErrorW 函式向偵錯工具報告錯誤狀況和對應的訊息。 此函式不會執行記錄或事件追蹤。
藉由引發結構化例外狀況,錯誤會與偵錯工具通訊。 附加偵錯工具會攔截此例外狀況,而例外狀況參數同時包含錯誤和 訊息 字串。 偵錯工具可能會向使用者顯示這些參數。
根據偵錯工具的目前組態, RoOriginateErrorW 函式可能會導致例外狀況的月臺上的偵錯工具停止執行。
如果 UseSetErrorInfo 旗標是藉由呼叫 RoSetErrorReportingFlags 函式來設定,而且呼叫執行緒已在 COM 中初始化,則函式會建立支援 IRestrictedErrorInfo 的適當錯誤物件,並藉由呼叫 SetErrorInfo將它與 COM 通道產生關聯。 如果執行緒尚未初始化為 COM,呼叫仍然會成功,但錯誤不會與 COM 通道相關聯。
需求
最低支援的用戶端 | Windows 8 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2012 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | roerrorapi.h |
程式庫 | RuntimeObject.lib |