Interfaces de document composées
Les tableaux suivants répertorient les interfaces implémentées par des conteneurs OLE, des serveurs OLE et des objets de document composés. Les interfaces requises doivent être implémentées sur les composants pour lesquels elles sont répertoriées. Toutes les autres fonctionnalités sont facultatives. Si vous souhaitez inclure une fonctionnalité particulière dans votre application, toutefois, vous devez implémenter les interfaces indiquées pour cette fonctionnalité dans le tableau ci-dessous. Toutes les autres interfaces sont requises uniquement si vous incluez une fonctionnalité particulière.
Le tableau suivant répertorie les comportements obligatoires et facultatifs pour les conteneurs OLE et les interfaces que vous devez implémenter pour chacun d’eux.
Comportement | Interfaces |
---|---|
Comportements requis |
IOleClientSite IAdviseSink |
Filtrage des messages |
IMessageFilter |
Enchaînement |
aucun |
Liaison à des objets incorporés |
IOleItemContainer IPersistFile IClassFactory |
Activation sur place |
IOleInPlaceSite IOleInPlaceFrame IOleInPlaceObject |
Glisser-déplacer |
IDropSource IDropTarget IDataObject |
Le tableau suivant répertorie les comportements obligatoires et facultatifs pour les serveurs OLE et leurs objets de documents composés et les interfaces que vous devez implémenter pour chacun d’eux. La table distingue les serveurs OLE et leurs objets pour clarifier le composant qui implémente les interfaces. Le tableau note également les différentes exigences des objets fournis par les serveurs hors processus et in-process.
Caractéristique | SERVEUR OLE | Objet (out-of-process) | Objet (in-process) |
---|---|---|---|
Comportements requis |
IClassFactory |
IOleObject IDataObject IPersistStorage |
IOleObject IDataObject IPersistStorage IViewObject2 IOleCache2 |
Filtrage des messages |
IMessageFilter |
||
Enchaînement |
IOleItemContainer IPersistFile |
IOleLink IExternalConnection |
|
Activation sur place |
IOleInPlaceObject IOleInPlaceActiveObject |
IOleInPlaceObject IOleInPlaceActiveObject |
|
Glisser-déplacer |
IDropSource IDropTarget IDataObject |