Classe COleTemplateServer
Usado para servidores de edição visual OLE, servidores de automação e contêineres de link (aplicativos que dão suporte a links para incorporações).
Sintaxe
class COleTemplateServer : public COleObjectFactory
Membros
Construtores públicos
Nome | Descrição |
---|---|
COleTemplateServer::COleTemplateServer | Constrói um objeto COleTemplateServer . |
Métodos públicos
Nome | Descrição |
---|---|
COleTemplateServer::ConnectTemplate | Conecta um modelo de documento ao objeto subjacente COleObjectFactory . |
COleTemplateServer::Unregister | Cancela o registro do modelo de documento associado. |
COleTemplateServer::UpdateRegistry | Registra o tipo de documento com o Registro do sistema OLE. |
Comentários
Essa classe é derivada da classe COleObjectFactory; geralmente, você pode usar COleTemplateServer
diretamente, em vez de derivar uma classe própria. COleTemplateServer
usa um objeto CDocTemplate para gerenciar os documentos do servidor. Use COleTemplateServer
ao implementar um servidor completo, ou seja, um servidor que pode ser executado como um aplicativo autônomo. Os servidores completos normalmente são vários aplicativos MDI (interface de documento), embora haja suporte para aplicativos SDI (interface de documento único). Um objeto COleTemplateServer
é necessário para cada tipo de documento de servidor compatível com um aplicativo; ou seja, se o aplicativo para servidores dá suporte a planilhas e gráficos, você deve ter dois objetos COleTemplateServer
.
COleTemplateServer
substitui a função de membro OnCreateInstance
definida por COleObjectFactory
. Essa função de membro é chamada pela estrutura para criar um objeto C++ do tipo adequado.
Para mais informações sobre servidores, confira o artigo Servidores: como implementar um servidor.
Hierarquia de herança
COleTemplateServer
Requisitos
Cabeçalho afxdisp.h
COleTemplateServer::COleTemplateServer
Constrói um objeto COleTemplateServer
.
COleTemplateServer();
Comentários
Para uma breve descrição do uso da classe COleTemplateServer
, confira a visão geral da classe COleLinkingDoc.
COleTemplateServer::ConnectTemplate
Conecta o modelo de documento apontado por pDocTemplate ao objeto COleObjectFactory subjacente.
void ConnectTemplate(
REFCLSID clsid,
CDocTemplate* pDocTemplate,
BOOL bMultiInstance);
Parâmetros
clsid
Referência à ID da classe OLE que o modelo solicita.
pDocTemplate
Ponteiro para o modelo de documento.
bMultiInstance
Indica se uma só instância do aplicativo pode dar suporte a várias instanciações. Se TRUE, várias instâncias do aplicativo serão iniciadas para cada solicitação para criar um objeto.
Comentários
Para mais informações, confira Chave CLSID no SDK do Windows.
COleTemplateServer::Unregister
Cancela o registro do modelo de documento associado.
BOOL Unregister();
Valor de retorno
TRUE se tiver êxito; caso contrário, FALSE.
Comentários
EnterRemarks
COleTemplateServer::UpdateRegistry
Carrega informações de tipo de arquivo da cadeia de caracteres de modelo de documento e coloca essas informações no Registro do sistema OLE.
void UpdateRegistry(
OLE_APPTYPE nAppType = OAT_INPLACE_SERVER,
LPCTSTR* rglpszRegister = NULL,
LPCTSTR* rglpszOverwrite = NULL,
BOOL bRegister = TRUE);
Parâmetros
nAppType
Um valor da enumeração OLE_APPTYPE, que é definido em AFXDISP.H. Pode ter qualquer um dos seguintes valores:
OAT_INPLACE_SERVER O servidor tem interface de usuário completa do servidor.
OAT_SERVER O servidor dá suporte apenas à inserção.
OAT_CONTAINER O contêiner dá suporte a links para objetos inseridos.
OAT_DISPATCH_OBJECT O objeto é capaz de
IDispatch
.OAT_DOC_OBJECT_SERVER O servidor dá suporte à inserção e ao modelo de componente objeto de documento.
rglpszRegister
Uma lista de entradas que serão gravadas no Registro somente se não existirem entradas.
rglpszOverwrite
Uma lista de entradas que serão gravadas no Registro independentemente de haver entradas anteriores.
bRegister
Determina se a classe deve ser registrada. Se bRegister for TRUE, a classe será registrada no Registro do sistema. Caso contrário, o registro da classe será cancelado.
Comentários
As informações de registro são carregadas por meio de uma chamada para CDocTemplate::GetDocString. As substrings recuperadas são aquelas identificadas pelos índices regFileTypeId
, regFileTypeName
e fileNewName
, conforme descrito nas páginas de referência GetDocString
.
Se a substring regFileTypeId
estiver vazia ou se a chamada a GetDocString
falhar por qualquer outro motivo, essa função falhará e as informações do arquivo não serão inseridas no Registro.
As informações nos argumentos rglpszRegister e rglpszOverwrite são gravadas no Registro por meio de uma chamada para AfxOleRegisterServerClass. As informações padrão, que são registradas quando os dois argumentos são NULL são adequadas para a maioria dos aplicativos. Para informações sobre a estrutura das informações nesses argumentos, confira AfxOleRegisterServerClass
.
Para obter mais informações, confira Como implementar a interface IDispatch.
Confira também
HIERSVR de exemplo do MFC
Classe COleObjectFactory
Gráfico da hierarquia
Classe COleServerDoc
Classe COleServerItem