Compartir a través de


COleTemplateServer (clase)

Nota:

La biblioteca Microsoft Foundation Classes (MFC) sigue siendo compatible. Sin embargo, ya no estamos agregando características ni actualizando la documentación.

Se utiliza para servidores de edición visual OLE, servidores de automatización y contenedores de vínculos (aplicaciones que admiten vínculos con incrustaciones).

Syntax

class COleTemplateServer : public COleObjectFactory

Members

Constructores públicos

Name Description
COleTemplateServer::COleTemplateServer Construye un objeto COleTemplateServer.

Métodos públicos

Name Description
COleTemplateServer::ConnectTemplate Conecta una plantilla de documento al objeto COleObjectFactory subyacente.
COleTemplateServer::Unregister Anula el registro de la plantilla de documento asociada.
COleTemplateServer::UpdateRegistry Registra el tipo de documento con el registro del sistema OLE.

Remarks

Esta clase se deriva de la clase COleObjectFactory; normalmente, puede usar COleTemplateServer directamente en lugar de derivar su propia clase. COleTemplateServer usa un objeto CDocTemplate para administrar los documentos del servidor. Use COleTemplateServer al implementar un servidor completo, es decir, un servidor que se pueda ejecutar como una aplicación independiente. Los servidores completos suelen ser aplicaciones de interfaz de múltiples documentos (MDI), aunque se admiten aplicaciones de interfaz de documento único (SDI). Se necesita un objeto COleTemplateServer para cada tipo de documento de servidor que admite una aplicación; es decir, si la aplicación de servidor admite hojas de cálculo y gráficos, debe tener dos objetos COleTemplateServer.

COleTemplateServer invalida la función miembro OnCreateInstance que define COleObjectFactory. El marco llama a esta función miembro para crear un objeto de C++ del tipo adecuado.

Para obtener más información sobre los servidores, vea el artículo Servidores: Implementar un servidor.

Jerarquía de herencia

CObject

CCmdTarget

COleObjectFactory

COleTemplateServer

Requirements

Encabezado: afxdisp.h

COleTemplateServer::COleTemplateServer

Construye un objeto COleTemplateServer.

COleTemplateServer();

Remarks

Para obtener una breve descripción del uso de la COleTemplateServer clase, consulte la información general de la clase COleLinkingDoc .

COleTemplateServer::ConnectTemplate

Conecta la plantilla de documento a la que apunta pDocTemplate al objeto COleObjectFactory subyacente.

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

Parameters

clsid
Referencia al id. de clase OLE que solicita la plantilla.

pDocTemplate
Puntero a la plantilla de documento.

bMultiInstance
Indica si una única instancia de la aplicación puede admitir varias instancias. Si es TRUE, se inician varias instancias de la aplicación para cada solicitud para crear un objeto.

Remarks

Para obtener más información, consulte ClSID Key in the Windows SDK ( Clave CLSID en Windows SDK).

COleTemplateServer::Unregister

Anula el registro de la plantilla de documento asociada.

BOOL Unregister();

Valor devuelto

TRUE si es correcto; en caso contrario, FALSE.

COleTemplateServer::UpdateRegistry

Carga información de tipo de archivo de la cadena de la plantilla de documento y coloca esa información en el registro del sistema OLE.

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

Parameters

nAppType
Valor de la enumeración OLE_APPTYPE, que se define en AFXDISP.H. Puede tener uno de los valores siguientes:

  • OAT_INPLACE_SERVER El servidor tiene una interfaz de usuario de servidor completa.

  • OAT_SERVER El servidor solo admite la inserción.

  • OAT_CONTAINER El contenedor admite vínculos a objetos insertados.

  • OAT_DISPATCH_OBJECT El objeto es compatible con IDispatch.

  • OAT_DOC_OBJECT_SERVER El servidor admite la inserción y el modelo de componentes del objeto de documento.

rglpszRegister
Una lista de entradas escritas en el registro solo si no existen entradas.

rglpszOverwrite
Lista de entradas escritas en el registro, independientemente de si existen entradas anteriores.

bRegister
Determina si la clase se va a registrar. Si bRegister es TRUE, la clase se registra en el registro del sistema. De lo contrario, anula el registro de la clase.

Remarks

La información de registro se carga mediante una llamada a CDocTemplate::GetDocString. Las subcadenas recuperadas son las que identifican los índices regFileTypeId, regFileTypeName y fileNewName, tal como se describe en las páginas de referencia de GetDocString.

Si la subcadena regFileTypeId está vacía o si se produce un error en la llamada a GetDocString por cualquier otro motivo, se produce un error en esta función y la información del archivo no se introduce en el registro.

La información de los argumentos rglpszRegister y rglpszOverwrite se escribe en el registro mediante una llamada a AfxOleRegisterServerClass. La información predeterminada, que se registra cuando los dos argumentos son NULL, es adecuada para la mayoría de las aplicaciones. Para obtener información sobre la estructura de la información de estos argumentos, vea AfxOleRegisterServerClass.

Para obtener más información, consulta Implementing the IDispatch Interface.

Consulte también

HIERSVR de muestra MFC
COleObjectFactory (clase)
Gráfico de jerarquías
COleServerDoc (clase)
Clase COleServerItem