Interface IAdviseSink (objidl.h)
Permet aux conteneurs et autres objets de recevoir des notifications de modifications de données, d’afficher les modifications et de modifier les documents composés qui se produisent dans les objets d’intérêt. Les applications conteneur, par exemple, nécessitent de telles notifications pour maintenir à jour les présentations mises en cache de leurs objets liés et incorporés. Les appels aux méthodes IAdviseSink étant asynchrones, l’appel est envoyé, puis l’instruction suivante est exécutée sans attendre le retour de l’appel.
Pour qu’une connexion de conseil existe, l’objet qui doit recevoir des notifications doit implémenter IAdviseSink, et les objets qui l’intéressent doivent implémenter IOleObject ::Advise et IDataObject ::D Advise. Les objets et gestionnaires in-process peuvent également implémenter IViewObject ::SetAdvise. Les objets implémentant IOleObject doivent prendre en charge toutes les méthodes de conseil raisonnables. Pour simplifier les notifications d’avis, OLE fournit les implémentations des IDataAdviseHolder et IOleAdviseHolder, qui effectuent le suivi des connexions de conseil et envoient des notifications aux récepteurs appropriés via des pointeurs vers leurs interfaces IAdviseSink . IViewObject (et ses méthodes de conseil) sont implémentés dans le gestionnaire par défaut.
Comme indiqué dans le tableau suivant, un objet qui a implémenté un récepteur d’avis enregistre son intérêt à recevoir certains types de notifications en appelant la méthode appropriée.
Appeler cette méthode | Pour s’inscrire à ces notifications |
---|---|
IOleObject ::Advise | Lorsqu’un document est enregistré, fermé ou renommé. |
IDataObject ::D Advise | Quand les données d’un document changent. |
IViewObject ::SetAdvise | Quand la présentation d’un document change. |
Lorsqu’un événement qui s’applique à un type de notification inscrit se produit, l’application objet appelle la méthode IAdviseSink appropriée. Par exemple, lorsqu’un objet incorporé se ferme, il appelle la méthode IAdviseSink ::OnClose pour notifier son conteneur. Ces notifications sont asynchrones et se produisent après les événements qui les déclenchent.
Héritage
L’interface IAdviseSink hérite de l’interface IUnknown. IAdviseSink a également les types de membres suivants :
Méthodes
L’interface IAdviseSink possède ces méthodes.
IAdviseSink ::OnClose Appelé par le serveur pour informer tous les récepteurs de conseil inscrits que l’objet est passé de l’état en cours d’exécution à l’état chargé. |
IAdviseSink ::OnDataChange Appelé par le serveur pour notifier les récepteurs d’un objet de données actuellement inscrits, indiquent que les données de l’objet ont changé. |
IAdviseSink ::OnRename Appelé par le serveur pour informer tous les récepteurs de conseils inscrits que l’objet a été renommé. |
IAdviseSink ::OnSave Appelé par le serveur pour informer tous les récepteurs de conseil inscrits que l’objet a été enregistré. |
IAdviseSink ::OnViewChange Avertit les récepteurs d’avis inscrits d’un objet que sa vue a changé. |
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | objidl.h |