Serveurs de documents actifs
Les serveurs de documents actifs tels que les documents Word, Excel ou PowerPoint hébergent les documents d'autres types d'application appelés documents actifs. Contrairement aux objets incorporés OLE (qui sont simplement affichés dans la page d'un autre document), les documents actifs fournissent l'interface complète et complètent des fonctionnalités natives de l'application serveur qui les crée. Les utilisateurs peuvent créer des documents en utilisant la pleine puissance de leurs applications favorites (s'ils ont activé les documents actifs), mais peuvent traiter le projet résultant comme une entité unique.
Les documents actifs peuvent avoir plusieurs pages et sont toujours actifs sur place. Les documents actifs contrôlent une partie de l’interface utilisateur, en fusionnant leurs menus avec les menus Fichier et Aide du conteneur. Ils occupent la zone de modification entière du conteneur et contrôlent les vues et la mise en page d'imprimante (marges, pieds de page, etc.).
MFC implémente des serveurs de documents actifs avec les interfaces de document/vue, les tables de dispatch de commandes, l'impression, la gestion des menus et la gestion du Registre. Des exigences de programmation spécifiques sont abordées dans les documents actifs.
MFC prend en charge les documents actifs avec la classe CDocObjectServer , dérivée de CCmdTarget et CDocObjectServerItem, dérivée de COleServerItem. MFC prend en charge les conteneurs de documents actifs avec la classe COleDocObjectItem , dérivée de COleClientItem.
CDocObjectServer
mappe les interfaces de document actif et initialise et active un document actif. MFC fournit également des macros pour gérer le routage des commandes des documents actifs. Pour utiliser des documents actifs dans votre application, incluez AfxDocOb.h dans votre fichier StdAfx.h.
Un serveur MFC normal installe sa propre classe dérivée COleServerItem
. L’Assistant Application MFC génère cette classe pour vous si vous sélectionnez la zone mini-serveur ou serveur complet case activée pour fournir à votre serveur d’applications la prise en charge du document composé de votre serveur d’applications. Si vous sélectionnez également la zone case activée du serveur de documents actif, l’Assistant Application MFC génère plutôt une classe dérivéeCDocObjectServerItem
.
La classe COleDocObjectItem
permet à un conteneur OLE de devenir un conteneur de documents actifs. Vous pouvez utiliser l’Assistant Application MFC pour créer un conteneur de documents actif en sélectionnant le conteneur de documents actif case activée box dans la page Prise en charge des documents composés de l’Assistant Application MFC. Pour plus d’informations, consultez Création d’une application de conteneur de documents actif.