COM 中的錯誤處理 (COM)

幾乎所有的 COM 函式和介面方法都會傳回 HRESULT 類型的值。 HRESULT(名稱可讀取為「結果句柄」)是傳回成功、警告或錯誤值的方法。 HRESULT 實際上不是句柄(請參閱為什麼 HRESULT 在不是任何專案句柄時以 H 開頭?):它只是一個值,其中已編碼成數個字段。 根據 COM 規格,零的結果表示成功,而非零的結果則表示失敗。

在原始程式碼層級,所有錯誤值都包含三個部分,並以底線分隔。 第一個部分是識別與錯誤相關聯之設施的前置詞,第二個部分是 E 表示錯誤,而第三個部分是描述實際條件的字串。 例如,當硬碟上沒有剩餘空間時, 會傳回STG_E_MEDIUMFULL 。 STG 前置詞表示儲存設施、E 表示狀態代碼代表錯誤,而MEDIUMFULL會提供錯誤的特定資訊。 您可能會想要從介面方法或函式傳回的許多值都定義在 Winerror.h 中。

如需錯誤處理的詳細資訊,請參閱下列各節:

COM 錯誤碼