共用方式為


_com_raise_error

Microsoft 特定的

擲回 _com_error 以回應失敗。

void __stdcall _com_raise_error( 
   HRESULT hr, 
   IErrorInfo* perrinfo = 0 
);

參數

  • hr
    HRESULT 資訊。

  • perrinfo
    IErrorInfo 物件。

備註

_com_raise_error 是在 comdef.h 中定義,可以取代為相同名稱和原型的使用者撰寫版本。 如果您要使用 #import,但是不想要使用 C++ 例外狀況處理,則可以這樣做。 在這種情況下,使用者版本的 _com_raise_error 可能會決定進行 longjmp 或顯示訊息方塊並暫止。 不過,使用者版本不應傳回,因為編譯器 COM 支援程式碼不會預期它傳回。

您也可以使用 _set_com_error_handler 取代預設錯誤處理函式。

根據預設,_com_raise_error 定義如下:

void __stdcall _com_raise_error(HRESULT hr, IErrorInfo* perrinfo) {
   throw _com_error(hr, perrinfo);
}

需求

**標頭:**comdef.h

**Lib:**如果 [wchar_t 為原生類型] 編譯器選項為開啟狀態,請使用 comsuppw.lib 或 comsuppwd.lib。 如果 [wchar_t 原生類型] 為關閉狀態,請使用 comsupp.lib。 如需詳細資訊,請參閱 /Zc:wchar_t (wchar_t 是原生類型)

請參閱

參考

編譯器 COM 全域函式

_set_com_error_handler