Share via


Método IMMDeviceEnumerator::UnregisterEndpointNotificationCallback (mmdeviceapi.h)

O método UnregisterEndpointNotificationCallback exclui o registro de uma interface de notificação que o cliente registrou em uma chamada anterior para o método IMMDeviceEnumerator::RegisterEndpointNotificationCallback .

Sintaxe

HRESULT UnregisterEndpointNotificationCallback(
  [in] IMMNotificationClient *pClient
);

Parâmetros

[in] pClient

Ponteiro para a interface IMMNotificationClient do cliente. O cliente passou esse mesmo ponteiro de interface para o enumerador de dispositivo em uma chamada anterior para o método IMMDeviceEnumerator::RegisterEndpointNotificationCallback . Para obter mais informações, consulte Comentários.

Retornar valor

Se o método for bem-sucedido, retornará S_OK. Se falhar, os códigos de retorno possíveis incluem, mas não se limitam a, os valores mostrados na tabela a seguir.

Código de retorno Descrição
E_POINTER
O parâmetro pNotify é NULL.
E_NOTFOUND
A interface de notificação especificada não foi encontrada.

Comentários

O cliente deve garantir que o objeto IMMNotificationClient não seja liberado após a chamada RegisterEndpointNotificationCallback e antes de chamar UnregisterEndpointNotificationCallback. Esses métodos não chamam as implementações IMMNotificationClient::AddRef e IMMNotificationClient::Release do cliente. O cliente é responsável por manter a contagem de referência do objeto IMMNotificationClient . O cliente deverá incrementar a contagem se a chamada RegisterEndpointNotificationCallback for bem-sucedida e liberar a referência final somente depois de chamar UnregisterEndpointNotificationCallback ou implementar algum outro mecanismo para garantir que o objeto não seja excluído antes de UnregisterEndpointNotificationCallback ser chamado. Caso contrário, o aplicativo vazará os recursos mantidos pelo IMMNotificationClient e qualquer outro objeto implementado no mesmo contêiner.

Para obter mais informações sobre os métodos AddRef e Release, consulte a discussão sobre a interface IUnknown na documentação do SDK do Windows.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho mmdeviceapi.h

Confira também

IMMDeviceEnumerator Interface

IMMDeviceEnumerator::RegisterEndpointNotificationCallback

IMMNotificationClient Interface