Classe COleTemplateServer
Utilizzata per i server di modifica visiva OLE, i server di automazione e i contenitori di collegamento (applicazioni che supportano collegamenti a incorporamenti).
Sintassi
class COleTemplateServer : public COleObjectFactory
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
COleTemplateServer::COleTemplateServer | Costruisce un oggetto COleTemplateServer . |
Metodi pubblici
Nome | Descrizione |
---|---|
COleTemplateServer::ConnectTemplate | Connette un modello di documento all'oggetto sottostante COleObjectFactory . |
COleTemplateServer::Unregister | Annulla la registrazione del modello di documento associato. |
COleTemplateServer::UpdateRegistry | Registra il tipo di documento con il Registro di sistema OLE. |
Osservazioni:
Questa classe è derivata dalla classe COleObjectFactory. In genere, è possibile usare COleTemplateServer
direttamente anziché derivare la propria classe. COleTemplateServer
utilizza un oggetto CDocTemplate per gestire i documenti del server. Usare COleTemplateServer
quando si implementa un server completo, ovvero un server che può essere eseguito come applicazione autonoma. I server completi sono in genere più applicazioni MDI (Document Interface), anche se sono supportate applicazioni SDI (Single Document Interface). È necessario un COleTemplateServer
oggetto per ogni tipo di documento server supportato da un'applicazione, ovvero se l'applicazione server supporta sia fogli di lavoro che grafici, è necessario disporre di due COleTemplateServer
oggetti.
COleTemplateServer
esegue l'override della OnCreateInstance
funzione membro definita da COleObjectFactory
. Questa funzione membro viene chiamata dal framework per creare un oggetto C++ del tipo appropriato.
Per altre informazioni sui server, vedere l'articolo Server: Implementazione di un server.
Gerarchia di ereditarietà
COleTemplateServer
Requisiti
Intestazione: afxdisp.h
COleTemplateServer::COleTemplateServer
Costruisce un oggetto COleTemplateServer
.
COleTemplateServer();
Osservazioni:
Per una breve descrizione dell'uso della COleTemplateServer
classe , vedere la panoramica della classe COleLinkingDoc .
COleTemplateServer::ConnectTemplate
Connette il modello di documento a cui punta pDocTemplate all'oggetto COleObjectFactory sottostante.
void ConnectTemplate(
REFCLSID clsid,
CDocTemplate* pDocTemplate,
BOOL bMultiInstance);
Parametri
clsid
Riferimento all'ID classe OLE richiesto dal modello.
pDocTemplate
Puntatore al modello di documento.
bMultiInstance
Indica se una singola istanza dell'applicazione può supportare più istanze. Se TRUE, vengono avviate più istanze dell'applicazione per ogni richiesta per creare un oggetto.
Osservazioni:
Per altre informazioni, vedere Chiave CLSID in Windows SDK.
COleTemplateServer::Unregister
Annulla la registrazione del modello di documento associato.
BOOL Unregister();
Valore restituito
TRUE se l'operazione riesce; in caso contrario, FALSE.
Osservazioni:
EnterRemarks
COleTemplateServer::UpdateRegistry
Carica le informazioni sul tipo di file dalla stringa del modello di documento e inserisce tali informazioni nel Registro di sistema OLE.
void UpdateRegistry(
OLE_APPTYPE nAppType = OAT_INPLACE_SERVER,
LPCTSTR* rglpszRegister = NULL,
LPCTSTR* rglpszOverwrite = NULL,
BOOL bRegister = TRUE);
Parametri
nAppType
Valore dell'enumerazione OLE_APPTYPE, definita in AFXDISP.H. Può avere uno dei valori seguenti:
OAT_INPLACE_SERVER Server ha un'interfaccia utente server completa.
OAT_SERVER Server supporta solo l'incorporamento.
OAT_CONTAINER Contenitore supporta collegamenti a oggetti incorporati.
OAT_DISPATCH_OBJECT Object è in grado di supportare
IDispatch
.OAT_DOC_OBJECT_SERVER Server supporta sia l'incorporamento che il modello del componente Document Object.
rglpszRegister
Elenco di voci scritte nel Registro di sistema solo se non esistono voci.
rglpszOverwrite
Elenco di voci scritte nel Registro di sistema indipendentemente dal fatto che esistano voci precedenti.
bRegister
Determina se la classe deve essere registrata. Se bRegister è TRUE, la classe viene registrata nel Registro di sistema. In caso contrario, annulla la registrazione della classe .
Osservazioni:
Le informazioni di registrazione vengono caricate tramite una chiamata a CDocTemplate::GetDocString. Le sottostringhe recuperate sono quelle identificate regFileTypeId
dagli indici , regFileTypeName
e fileNewName
, come descritto nelle pagine di GetDocString
riferimento.
Se la regFileTypeId
sottostringa è vuota o se la chiamata a GetDocString
non riesce per qualsiasi altro motivo, questa funzione ha esito negativo e le informazioni sul file non vengono immesse nel Registro di sistema.
Le informazioni negli argomenti rglpszRegister e rglpszOverwrite sono scritte nel Registro di sistema tramite una chiamata a AfxOleRegisterServerClass. Le informazioni predefinite, registrate quando i due argomenti sono NULL, sono adatte per la maggior parte delle applicazioni. Per informazioni sulla struttura delle informazioni contenute in questi argomenti, vedere AfxOleRegisterServerClass
.
Per altre informazioni, vedere Implementing the IDispatch Interface.
Vedi anche
HIERSVR di esempio MFC
Classe COleObjectFactory
Grafico della gerarchia
Classe COleServerDoc
Classe COleServerItem