Metodo IVdsService::Advise (vds.h)

[A partire da Windows 8 e Windows Server 2012, l'interfaccia COM del servizio disco virtuale viene sostituita dall'API gestione archiviazione di Windows.]

Registra l'interfaccia IVdsAdviseSink del chiamante con VDS in modo che il chiamante riceva le notifiche dal servizio VDS.

Sintassi

HRESULT Advise(
  [in]  IVdsAdviseSink *pSink,
  [out] DWORD          *pdwCookie
);

Parametri

[in] pSink

Puntatore all'interfaccia IVdsAdviseSink .

[out] pdwCookie

Puntatore a un cookie che può essere usato in un secondo momento per annullare la registrazione dell'interfaccia.

Valore restituito

Questo metodo può restituire valori HRESULT standard, ad esempio E_INVALIDARG o E_OUTOFMEMORY e valori restituiti specifici di VDS. Può anche restituire codici di errore di sistema convertiti usando la macro HRESULT_FROM_WIN32 . Gli errori possono provenire dal VDS stesso o dal provider VDS sottostante in uso. I valori restituiti possibili includono quanto segue.

Codice/valore restituito Descrizione
S_OK
La registrazione è stata completata correttamente.
VDS_E_INITIALIZED_FAILED
0x80042401L
Impossibile inizializzare VDS. Se un'applicazione chiama questo metodo prima che il servizio completi l'inizializzazione, il metodo viene bloccato fino al completamento dell'inizializzazione. Se l'inizializzazione ha esito negativo, viene restituito questo errore.

Commenti

Per ricevere notifiche dal servizio VDS, l'applicazione deve implementare l'interfaccia IVdsAdviseSink e usare il metodo Advise per registrare l'interfaccia.

Per interrompere la ricezione di notifiche dal servizio VDS, usare il metodo IVdsService::Unadvise per annullare la registrazione dell'interfaccia IVdsAdviseSink .

Nota Un'applicazione che chiama Advise deve infine chiamare Unadvise. Idealmente, dovrebbe chiamare Unadvise non appena non deve più ricevere notifiche.
 
Per ricevere notifiche da provider hardware e software sottostanti, VDS passa una funzione di callback di notifica a ogni provider come parametro del metodo IVdsProviderPrivate::OnLoad .

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione vds.h
Libreria Uuid.lib

Vedi anche

IVdsAdviseSink

IVdsProviderPrivate::OnLoad

IVdsService

Notifiche VDS