COleTemplateServer, classe

Utilisée pour les serveurs d'édition visuelle OLE, les serveurs Automation et les conteneurs de lien (applications qui prennent en charge les liaisons aux incorporations).

Syntaxe

class COleTemplateServer : public COleObjectFactory

Membres

Constructeurs publics

Nom Description
COleTemplateServer ::COleTemplateServer Construit un objet COleTemplateServer.

Méthodes publiques

Nom Description
COleTemplateServer ::ConnectTemplate Connecte un modèle de document à l’objet sous-jacent COleObjectFactory .
COleTemplateServer ::Unregister Annule l’inscription du modèle de document associé.
COleTemplateServer ::UpdateRegistry Inscrit le type de document auprès du registre système OLE.

Notes

Cette classe est dérivée de la classe COleObjectFactory ; généralement, vous pouvez utiliser COleTemplateServer directement plutôt que de dériver votre propre classe. COleTemplateServer utilise un objet CDocTemplate pour gérer les documents serveur. Utilisez cette option COleTemplateServer lors de l’implémentation d’un serveur complet, c’est-à-dire un serveur qui peut être exécuté en tant qu’application autonome. Les serveurs complets sont généralement plusieurs applications MDI (Document Interface), bien que les applications SDI (Single Document Interface) soient prises en charge. Un COleTemplateServer objet est nécessaire pour chaque type de document serveur pris en charge par une application ; autrement dit, si votre application serveur prend en charge les feuilles de calcul et les graphiques, vous devez avoir deux COleTemplateServer objets.

COleTemplateServer remplace la OnCreateInstance fonction membre définie par COleObjectFactory. Cette fonction membre est appelée par l’infrastructure pour créer un objet C++ du type approprié.

Pour plus d’informations sur les serveurs, consultez l’article Serveurs : Implémentation d’un serveur.

Hiérarchie d'héritage

CObject

CCmdTarget

COleObjectFactory

COleTemplateServer

Spécifications

En-tête : afxdisp.h

COleTemplateServer ::COleTemplateServer

Construit un objet COleTemplateServer.

COleTemplateServer();

Notes

Pour obtenir une brève description de l’utilisation de la classe, consultez la vue d’ensemble de la COleTemplateServer classe COleLinkingDoc .

COleTemplateServer ::ConnectTemplate

Connecte le modèle de document pointé par pDocTemplate à l’objet COleObjectFactory sous-jacent.

void ConnectTemplate(
    REFCLSID clsid,
    CDocTemplate* pDocTemplate,
    BOOL bMultiInstance);

Paramètres

clsid
Référence à l’ID de classe OLE que le modèle demande.

pDocTemplate
Pointeur vers le modèle de document.

bMultiInstance
Indique si une seule instance de l’application peut prendre en charge plusieurs instanciations. Si la valeur est TRUE, plusieurs instances de l’application sont lancées pour chaque requête pour créer un objet.

Notes

Pour plus d’informations, consultez clé CLSID dans le Kit de développement logiciel (SDK) Windows.

COleTemplateServer ::Unregister

Annule l’inscription du modèle de document associé.

BOOL Unregister();

Valeur de retour

TRUE en cas de réussite, sinon FALSE.

Notes

EnterRemarks

COleTemplateServer ::UpdateRegistry

Charge les informations de type de fichier à partir de la chaîne de modèle de document et place ces informations dans le registre système OLE.

void UpdateRegistry(
    OLE_APPTYPE nAppType = OAT_INPLACE_SERVER,
    LPCTSTR* rglpszRegister = NULL,
    LPCTSTR* rglpszOverwrite = NULL,
    BOOL bRegister = TRUE);

Paramètres

nAppType
Valeur de l’énumération OLE_APPTYPE, qui est définie dans AFXDISP.H. Il peut avoir l’une des valeurs suivantes :

  • OAT_INPLACE_SERVER Server dispose d’une interface utilisateur de serveur complète.

  • OAT_SERVER Server prend uniquement en charge l’incorporation.

  • OAT_CONTAINER Container prend en charge les liens vers des objets incorporés.

  • OAT_DISPATCH_OBJECT Object est IDispatch-capable.

  • OAT_DOC_OBJECT_SERVER Server prend en charge l’incorporation et le modèle de composant Objet document.

rglpszRegister
Liste des entrées écrites dans le Registre uniquement si aucune entrée n’existe.

rglpszOverwrite
Liste des entrées écrites dans le Registre, que les entrées précédentes existent ou non.

bRegister
Détermine si la classe doit être inscrite. Si bRegister a la valeur TRUE, la classe est inscrite auprès du registre système. Sinon, il annule l’inscription de la classe.

Notes

Les informations d’inscription sont chargées au moyen d’un appel à CDocTemplate ::GetDocString. Les sous-chaînes récupérées sont celles identifiées par les index regFileTypeId, regFileTypeNameet fileNewName, comme décrit dans les GetDocString pages de référence.

Si la regFileTypeId sous-chaîne est vide ou si l’appel à GetDocString échouer pour une autre raison, cette fonction échoue et les informations de fichier ne sont pas entrées dans le Registre.

Les informations contenues dans les arguments rglpszRegister et rglpszOverwrite sont écrites dans le registre via un appel à AfxOleRegisterServerClass. Les informations par défaut, qui sont inscrites lorsque les deux arguments sont NULL, conviennent à la plupart des applications. Pour plus d’informations sur la structure des informations contenues dans ces arguments, consultez AfxOleRegisterServerClass.

Pour plus d'informations, consultez Implementing the IDispatch Interface.

Voir aussi

Exemple MFC HIERSVR
COleObjectFactory, classe
Graphique hiérarchique
COleServerDoc, classe
COleServerItem, classe