Metodo IAudioEndpointVolume::UnregisterControlChangeNotify (endpointvolume.h)
Il metodo UnregisterControlChangeNotify elimina la registrazione dell'interfaccia di callback di notifica di un client registrata in una chiamata precedente al metodo IAudioEndpointVolume::RegisterControlChangeNotify .
Sintassi
HRESULT UnregisterControlChangeNotify(
[in] IAudioEndpointVolumeCallback *pNotify
);
Parametri
[in] pNotify
Puntatore all'interfaccia IAudioEndpointVolumeCallback del client. Il client ha passato questo stesso puntatore dell'interfaccia all'oggetto volume dell'endpoint in una chiamata precedente al metodo IAudioEndpointVolume::RegisterControlChangeNotify . Se il metodo UnregisterControlChangeNotify ha esito positivo, chiama il metodo Release nell'interfaccia IAudioEndpointVolumeCallback del client.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Se ha esito negativo, i codici restituiti possibili includono, ma non sono limitati a, i valori visualizzati nella tabella seguente.
Codice restituito | Descrizione |
---|---|
|
Il parametro pNotify è NULL. |
Commenti
Prima che il client rilasci il riferimento finale all'interfaccia IAudioEndpointVolumeCallback , deve chiamare UnregisterControlChangeNotify per annullare la registrazione dell'interfaccia. In caso contrario, l'applicazione perde le risorse mantenute dagli oggetti IAudioEndpointVolumeCallback e IAudioEndpointVolume. Si noti che il metodo IAudioEndpointVolume::RegisterControlChangeNotify chiama il metodo IAudioEndpointVolumeCallback::AddRef e UnregisterControlChangeNotify chiama il metodo IAudioEndpointVolumeCallback::Release . Se il client esegue l'errore rilasciando il relativo riferimento all'interfaccia IAudioEndpointVolumeCallback prima di chiamare UnregisterControlChangeNotify, l'oggetto IAudioEndpointVolume non rilascia mai il riferimento all'interfaccia IAudioEndpointVolumeCallback . Ad esempio, un'implementazione IAudioEndpointVolumeCallback non progettata correttamente potrebbe chiamare UnregisterControlChangeNotify dal distruttore per l'oggetto IAudioEndpointVolumeCallback . In questo caso, il client non chiamerà UnregisterControlChangeNotify finché l'oggetto IAudioEndpointVolume rilascia il riferimento all'interfaccia IAudioEndpointVolumeCallback e l'oggetto IAudioEndpointVolume non rilascia il relativo riferimento all'interfaccia IAudioEndpointVolumeCallback finché il client chiama UnregisterControlChangeNotify. Per altre informazioni sui metodi AddRef e Release , vedere la discussione sull'interfaccia IUnknown nella documentazione di Windows SDK.
Per un esempio di codice che chiama UnregisterControlChangeNotify, vedere Controlli volume endpoint.
Requisiti
Client minimo supportato | Windows Vista [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | endpointvolume.h |
Vedi anche
Interfaccia IAudioEndpointVolume