MÉTHODE IMMDeviceEnumerator ::UnregisterEndpointNotificationCallback (mmdeviceapi.h)
La méthode UnregisterEndpointNotificationCallback supprime l’inscription d’une interface de notification que le client a inscrite dans un appel précédent à la méthode IMMDeviceEnumerator ::RegisterEndpointNotificationCallback .
Syntaxe
HRESULT UnregisterEndpointNotificationCallback(
[in] IMMNotificationClient *pClient
);
Paramètres
[in] pClient
Pointeur vers l’interface IMMNotificationClient du client. Le client a passé ce même pointeur d’interface à l’énumérateur d’appareil dans un appel précédent à la méthode IMMDeviceEnumerator ::RegisterEndpointNotificationCallback . Pour plus d'informations, consultez la section Notes.
Valeur retournée
Si la méthode réussit, retourne S_OK. En cas d’échec, les codes de retour possibles incluent, sans s’y limiter, les valeurs indiquées dans le tableau suivant.
Code de retour | Description |
---|---|
|
Le paramètre pNotify a la valeur NULL. |
|
L’interface de notification spécifiée est introuvable. |
Remarques
Le client doit s’assurer que l’objet IMMNotificationClient n’est pas libéré après l’appel RegisterEndpointNotificationCallback et avant d’appeler UnregisterEndpointNotificationCallback. Ces méthodes n’appellent pas les implémentations IMMNotificationClient ::AddRef et IMMNotificationClient ::Release du client. Le client est responsable de la gestion du nombre de références de l’objet IMMNotificationClient . Le client doit incrémenter le nombre si l’appel RegisterEndpointNotificationCallback réussit et libérer la référence finale uniquement après avoir appelé UnregisterEndpointNotificationCallback ou implémenter un autre mécanisme pour s’assurer que l’objet n’est pas supprimé avant l’appel de UnregisterEndpointNotificationCallback . Sinon, l’application fuit les ressources détenues par IMMNotificationClient et tout autre objet implémenté dans le même conteneur.
Pour plus d’informations sur les méthodes AddRef et Release, consultez la discussion sur l’interface IUnknown dans la documentation SDK Windows.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | mmdeviceapi.h |
Voir aussi
IMMDeviceEnumerator, interface