Metodo IMMDeviceEnumerator::RegisterEndpointNotificationCallback (mmdeviceapi.h)
Il metodo RegisterEndpointNotificationCallback registra l'interfaccia di callback di notifica di un client.
Sintassi
HRESULT RegisterEndpointNotificationCallback(
[in] IMMNotificationClient *pClient
);
Parametri
[in] pClient
Puntatore all'interfaccia IMMNotificationClient che il client sta registrando per i callback di notifica.
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. |
|
Memoria insufficiente. |
Commenti
Questo metodo registra un'interfaccia IMMNotificationClient da chiamare dal sistema quando i ruoli, lo stato, l'esistenza o le proprietà di un dispositivo endpoint cambiano. Il chiamante implementa l'interfaccia IMMNotificationClient.
Quando le notifiche non sono più necessarie, il client può chiamare il metodo IMMDeviceEnumerator::UnregisterEndpointNotificationCallback per terminare le notifiche.
Il client deve assicurarsi che l'oggetto IMMNotificationClient non venga rilasciato dopo la chiamata RegisterEndpointNotificationCallback e prima di chiamare UnregisterEndpointNotificationCallback. Questi metodi non chiamano le implementazioni IMMNotificationClient::AddRef e IMMNotificationClient::Release. Il client è responsabile della gestione del conteggio dei riferimenti dell'oggetto IMMNotificationClient . Il client deve incrementare il conteggio se la chiamata RegisterEndpointNotificationCallback riesce e rilascia il riferimento finale solo dopo aver chiamato UnregisterEndpointNotificationCallback o implementare un altro meccanismo per assicurarsi che l'oggetto non venga eliminato prima che venga chiamato UnregisterEndpointNotificationCallback . In caso contrario, l'applicazione perde le risorse mantenute da IMMNotificationClient e qualsiasi altro oggetto implementato nello stesso contenitore.
Per altre informazioni sui metodi AddRef e Release, vedere la discussione sull'interfaccia IUnknown nella documentazione di Windows SDK.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | mmdeviceapi.h |
Vedi anche
Interfaccia IMMDeviceEnumerator