Dela via


COleTemplateServer Class

Används för ole-visuella redigeringsservrar, automationsservrar och länkcontainrar (program som stöder länkar till inbäddningar).

Syntax

class COleTemplateServer : public COleObjectFactory

Members

Public Constructors

Name Description
COleTemplateServer::COleTemplateServer Konstruerar ett COleTemplateServer objekt.

Public Methods

Name Description
COleTemplateServer::ConnectTemplate Ansluter en dokumentmall till det underliggande COleObjectFactory objektet.
COleTemplateServer::Unregister Avregistrerar den associerade dokumentmallen.
COleTemplateServer::UpdateRegistry Registrerar dokumenttypen med OLE-systemregistret.

Remarks

This class is derived from the class COleObjectFactory; usually, you can use COleTemplateServer directly rather than deriving your own class. COleTemplateServer uses a CDocTemplate object to manage the server documents. Använd COleTemplateServer när du implementerar en fullständig server, dvs. en server som kan köras som ett fristående program. Fullständiga servrar är vanligtvis flera program för dokumentgränssnitt (MDI), även om SDI-program (single document interface) stöds. Ett COleTemplateServer objekt behövs för varje typ av serverdokument som ett program stöder. Om serverprogrammet stöder både kalkylblad och diagram måste du ha två COleTemplateServer objekt.

COleTemplateServer åsidosätter medlemsfunktionen OnCreateInstance som definieras av COleObjectFactory. Den här medlemsfunktionen anropas av ramverket för att skapa ett C++-objekt av rätt typ.

Mer information om servrar finns i artikeln Servrar: Implementera en server.

Inheritance Hierarchy

CObject

CCmdTarget

COleObjectFactory

COleTemplateServer

Requirements

Header: afxdisp.h

COleTemplateServer::COleTemplateServer

Konstruerar ett COleTemplateServer objekt.

COleTemplateServer();

Remarks

For a brief description of the use of the COleTemplateServer class, see the COleLinkingDoc class overview.

COleTemplateServer::ConnectTemplate

Connects the document template pointed to by pDocTemplate to the underlying COleObjectFactory object.

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

Parameters

clsid
Referens till det OLE-klass-ID som mallen begär.

pDocTemplate
Pekare till dokumentmallen.

bMultiInstance
Anger om en enskild instans av programmet kan stödja flera instanser. Om TRUE startas flera instanser av programmet för varje begäran för att skapa ett objekt.

Remarks

For more information, see CLSID Key in the Windows SDK.

COleTemplateServer::Unregister

Avregistrerar den associerade dokumentmallen.

BOOL Unregister();

Return Value

SANT om det lyckas; annars FALSKT.

COleTemplateServer::UpdateRegistry

Läser in filtypsinformation från dokumentmallssträngen och placerar den informationen i OLE-systemregistret.

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

Parameters

nAppType
Ett värde från OLE_APPTYPE uppräkning, som definieras i AFXDISP.H. Den kan ha något av följande värden:

  • OAT_INPLACE_SERVER Server har fullständigt användargränssnitt för servern.

  • OAT_SERVER Server stöder endast inbäddning.

  • OAT_CONTAINER Container stöder länkar till inbäddade objekt.

  • OAT_DISPATCH_OBJECT-objektet är IDispatch-kompatibelt.

  • OAT_DOC_OBJECT_SERVER Server stöder både inbäddning och komponentmodellen dokumentobjekt.

rglpszRegister
En lista över poster som skrivs till registret endast om det inte finns några poster.

rglpszOverwrite
En lista över poster som skrivs till registret oavsett om det finns några föregående poster.

bRegister
Avgör om klassen ska registreras. If bRegister is TRUE, the class is registered with the system registry. Annars avregistreras klassen.

Remarks

The registration information is loaded by means of a call to CDocTemplate::GetDocString. De understrängar som hämtas är de som identifieras av indexen regFileTypeId, regFileTypeNameoch fileNewName, enligt beskrivningen på referenssidorna GetDocString .

Om delsträngen regFileTypeId är tom eller om anropet till GetDocString misslyckas av någon annan anledning misslyckas den här funktionen och filinformationen anges inte i registret.

The information in the arguments rglpszRegister and rglpszOverwrite is written to the registry through a call to AfxOleRegisterServerClass. Standardinformationen, som registreras när de två argumenten är NULL, är lämplig för de flesta program. Information om strukturen för informationen i dessa argument AfxOleRegisterServerClassfinns i .

Mer information finns i Implementera IDispatch-gränssnittet.

See also

HIERSVR-exempel på MFC-
COleObjectFactory Class
Hierarchy Chart
COleServerDoc Class
COleServerItem Class