Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используется для OLE-серверов визуального редактирования, серверов автоматизации и контейнеров связей (приложений, поддерживающих ссылки на внедряемые объекты).
Syntax
class COleTemplateServer : public COleObjectFactory
Members
Public Constructors
| Name | Description |
|---|---|
| COleTemplateServer::COleTemplateServer | Формирует объект COleTemplateServer. |
Public Methods
| Name | Description |
|---|---|
| COleTemplateServer::ConnectTemplate | Подключает шаблон документа к базовому COleObjectFactory объекту. |
| COleTemplateServer::Unregister | Отменяет регистрацию связанного шаблона документа. |
| COleTemplateServer::UpdateRegistry | Регистрирует тип документа в системный реестр OLE. |
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. Используйте COleTemplateServer при реализации полного сервера, то есть сервера, который можно запустить как автономное приложение. Полные серверы обычно являются несколькими приложениями интерфейса документов (MDI), хотя поддерживаются приложения с одним интерфейсом документов (SDI). Для каждого типа документа сервера требуется один COleTemplateServer объект, поддерживаемый приложением. То есть, если серверное приложение поддерживает как листы, так и диаграммы, необходимо иметь два COleTemplateServer объекта.
COleTemplateServer переопределяет функцию-член, определяемую OnCreateInstanceCOleObjectFactory. Эта функция-член вызывается платформой для создания объекта C++ соответствующего типа.
Дополнительные сведения о серверах см. в статье "Серверы: реализация сервера".
Inheritance Hierarchy
COleTemplateServer
Requirements
Header: afxdisp.h
COleTemplateServer::COleTemplateServer
Формирует объект COleTemplateServer.
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
Ссылка на идентификатор класса OLE, запрашиваемого шаблоном.
pDocTemplate
Указатель на шаблон документа.
bMultiInstance
Указывает, может ли один экземпляр приложения поддерживать несколько экземпляров. Если значение TRUE, для каждого запроса для создания объекта запускается несколько экземпляров приложения.
Remarks
For more information, see CLSID Key in the Windows SDK.
COleTemplateServer::Unregister
Отменяет регистрацию связанного шаблона документа.
BOOL Unregister();
Return Value
Значение TRUE, если успешно; в противном случае — FALSE.
COleTemplateServer::UpdateRegistry
Загружает сведения о типе файла из строки шаблона документа и помещает эти сведения в системный реестр OLE.
void UpdateRegistry(
OLE_APPTYPE nAppType = OAT_INPLACE_SERVER,
LPCTSTR* rglpszRegister = NULL,
LPCTSTR* rglpszOverwrite = NULL,
BOOL bRegister = TRUE);
Parameters
nAppType
Значение из перечисления OLE_APPTYPE, определенного в AFXDISP.H. Он может иметь одно из следующих значений:
OAT_INPLACE_SERVER Server имеет полный пользовательский интерфейс сервера.
OAT_SERVER Server поддерживает только внедрение.
контейнер OAT_CONTAINER поддерживает ссылки на внедренные объекты.
объект OAT_DISPATCH_OBJECT поддерживается
IDispatch.OAT_DOC_OBJECT_SERVER Server поддерживает внедрение и модель компонента объекта документа.
rglpszRegister
Список записей, записанных в реестр, только если записи отсутствуют.
rglpszOverwrite
Список записей, записанных в реестр, независимо от того, существуют ли предыдущие записи.
bRegister
Определяет, должен ли класс быть зарегистрирован. If bRegister is TRUE, the class is registered with the system registry. В противном случае он отменяет регистрацию класса.
Remarks
The registration information is loaded by means of a call to CDocTemplate::GetDocString. Извлекаемые подстроки — это те, которые определяются индексами regFileTypeIdиregFileTypeNamefileNewName, как описано на GetDocString справочных страницах.
regFileTypeId Если подстрока пуста или если вызов завершается GetDocString ошибкой по какой-либо другой причине, эта функция завершается ошибкой, а сведения о файле не вводятся в реестре.
The information in the arguments rglpszRegister and rglpszOverwrite is written to the registry through a call to AfxOleRegisterServerClass. Сведения по умолчанию, зарегистрированные при наличии двух аргументов NULL, подходят для большинства приложений. Сведения о структуре информации в этих аргументах см. в разделе AfxOleRegisterServerClass.
Дополнительные сведения см. в разделе Implementing the IDispatch Interface.
See also
Пример HIERSVR MFC
COleObjectFactory Class
Hierarchy Chart
COleServerDoc Class
COleServerItem Class