Partager via


IVdsService ::Advise, méthode (vds.h)

[À compter de Windows 8 et Windows Server 2012, l’interface COM du service de disque virtuel est remplacée par l’API gestion du stockage Windows.]

Inscrit l’interface IVdsAdviseSink de l’appelant auprès de VDS afin que l’appelant reçoive des notifications du service VDS.

Syntaxe

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

Paramètres

[in] pSink

Pointeur vers l’interface IVdsAdviseSink .

[out] pdwCookie

Pointeur vers un cookie qui peut être utilisé ultérieurement pour annuler l’inscription de l’interface.

Valeur retournée

Cette méthode peut retourner des valeurs HRESULT standard, telles que E_INVALIDARG ou E_OUTOFMEMORY, et des valeurs de retour spécifiques à VDS. Il peut également retourner des codes d’erreur système convertis à l’aide de la macro HRESULT_FROM_WIN32 . Les erreurs peuvent provenir de VDS lui-même ou du fournisseur VDS sous-jacent utilisé. Les valeurs de retour possibles sont les suivantes.

Code/valeur de retour Description
S_OK
L’inscription s’est terminée avec succès.
VDS_E_INITIALIZED_FAILED
0x80042401L
VDS n’a pas pu s’initialiser. Si une application appelle cette méthode avant la fin de l’initialisation du service, la méthode est bloquée jusqu’à la fin de l’initialisation. Si l’initialisation échoue, cette erreur est retournée.

Remarques

Pour recevoir des notifications du service VDS, votre application doit implémenter l’interface IVdsAdviseSink et utiliser la méthode Advise pour inscrire l’interface.

Pour arrêter de recevoir des notifications du service VDS, utilisez la méthode IVdsService ::Unadvise pour annuler l’inscription de l’interface IVdsAdviseSink .

Note Une application qui appelle Advise doit finalement appeler Unadvise. Dans l’idéal, il doit appeler Unadvise dès qu’il n’a plus besoin de recevoir de notifications.
 
Pour recevoir des notifications des fournisseurs de logiciels et de matériel sous-jacents, VDS transmet une fonction de rappel de notification à chaque fournisseur en tant que paramètre de la méthode IVdsProviderPrivate ::OnLoad .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête vds.h
Bibliothèque Uuid.lib

Voir aussi

IVdsAdviseSink

IVdsProviderPrivate ::OnLoad

IVdsService

VDS Notifications