共用方式為


CoRevokeClassObject 函式 (combaseapi.h)

通知 OLE,先前向 CoRegisterClassObject 函式註冊的類別物件已不再可供使用。

語法

HRESULT CoRevokeClassObject(
  [in] DWORD dwRegister
);

參數

[in] dwRegister

先前從 CoRegisterClassObject 函式傳回的權杖。

傳回值

此函式可以傳回標準傳回值E_INVALIDARG、E_OUTOFMEMORY和E_UNEXPECTED,以及下列值。

傳回碼 描述
S_OK
已成功撤銷類別物件。

備註

成功呼叫 CoRevokeClassObject 表示類別物件已從全域類別物件資料表中移除 (雖然它不會釋放類別物件) 。 如果其他用戶端仍有類別物件的指標,並導致參考計數因為呼叫 IUnknown::AddRef而遞增,則參考計數不會是零。 發生這種情況時,如果後續呼叫 (,但 AddRefIUnknown::Release) 類別物件的明顯例外狀況,應用程式可能會受益。 請注意,CoRegisterClassObject會呼叫AddRefCoRevokeClassObject呼叫Release,因此這兩個函式會形成AddRef/Release配對。

物件應用程式必須在結束程式之前呼叫 CoRevokeClassObject 來撤銷已註冊的類別物件。 類別物件實作者應該呼叫 CoRevokeClassObject 作為發行順序的一部分。 即使您已在呼叫 CoRegisterClassObject時指定旗標值REGCLS_SINGLEUSE,也必須特別撤銷類別物件,表示只有一個應用程式可以連線到類別物件。

規格需求

   
最低支援的用戶端 Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows 2000 Server [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 combaseapi.h (包含 Objbase.h)
程式庫 Ole32.lib
Dll Ole32.dll

另請參閱

CoGetClassObject

CoRegisterClassObject