Função CoRevokeClassObject (combaseapi.h)

Informa ao OLE que um objeto de classe, anteriormente registrado com a função CoRegisterClassObject , não está mais disponível para uso.

Sintaxe

HRESULT CoRevokeClassObject(
  [in] DWORD dwRegister
);

Parâmetros

[in] dwRegister

Um token retornado anteriormente da função CoRegisterClassObject .

Valor retornado

Essa função pode retornar os valores de retorno padrão E_INVALIDARG, E_OUTOFMEMORY e E_UNEXPECTED, bem como os valores a seguir.

Código de retorno Descrição
S_OK
O objeto de classe foi revogado com êxito.

Comentários

Uma chamada bem-sucedida para CoRevokeClassObject significa que o objeto de classe foi removido da tabela de objetos de classe global (embora não libere o objeto de classe). Se outros clientes ainda tiverem ponteiros para o objeto de classe e fizerem com que a contagem de referência seja incrementada por chamadas para IUnknown::AddRef, a contagem de referência não será zero. Quando isso ocorre, os aplicativos podem se beneficiar se as chamadas subsequentes (com as exceções óbvias de AddRef e IUnknown::Release) para o objeto de classe falharem. Observe que CoRegisterClassObject chama AddRef e CoRevokeClassObject chama Release, de modo que as duas funções formam um parde VersãoAddRef/.

Um aplicativo de objeto deve chamar CoRevokeClassObject para revogar objetos de classe registrados antes de sair do programa. Os implementadores de objeto de classe devem chamar CoRevokeClassObject como parte da sequência de lançamento. Você deve revogar especificamente o objeto de classe mesmo quando tiver especificado o valor de sinalizadores REGCLS_SINGLEUSE em uma chamada para CoRegisterClassObject, indicando que apenas um aplicativo pode se conectar ao objeto de classe.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho combaseapi.h (inclua Objbase.h)
Biblioteca Ole32.lib
DLL Ole32.dll

Confira também

Cogetclassobject

Coregisterclassobject