Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Библиотека классов Microsoft Foundation (MFC) продолжает поддерживаться. Однако мы больше не добавляем функции или обновляем документацию.
Используется для OLE-серверов визуального редактирования, серверов автоматизации и контейнеров связей (приложений, поддерживающих ссылки на внедряемые объекты).
Syntax
class COleTemplateServer : public COleObjectFactory
Members
Открытые конструкторы
| Name | Description |
|---|---|
| COleTemplateServer::COleTemplateServer | Формирует объект COleTemplateServer. |
Открытые методы
| Name | Description |
|---|---|
| COleTemplateServer::ConnectTemplate | Подключает шаблон документа к базовому COleObjectFactory объекту. |
| COleTemplateServer::Unregister | Отменяет регистрацию связанного шаблона документа. |
| COleTemplateServer::UpdateRegistry | Регистрирует тип документа в системный реестр OLE. |
Remarks
Этот класс является производным от класса COleObjectFactory; как правило, вы можете использовать COleTemplateServer напрямую, а не производный собственный класс.
COleTemplateServer использует объект CDocTemplate для управления документами сервера. Используйте COleTemplateServer при реализации полного сервера, то есть сервера, который можно запустить как автономное приложение. Полные серверы обычно являются несколькими приложениями интерфейса документов (MDI), хотя поддерживаются приложения с одним интерфейсом документов (SDI). Для каждого типа документа сервера требуется один COleTemplateServer объект, поддерживаемый приложением. То есть, если серверное приложение поддерживает как листы, так и диаграммы, необходимо иметь два COleTemplateServer объекта.
COleTemplateServer переопределяет функцию-член, определяемую OnCreateInstanceCOleObjectFactory. Эта функция-член вызывается платформой для создания объекта C++ соответствующего типа.
Дополнительные сведения о серверах см. в статье "Серверы: реализация сервера".
Иерархия наследования
COleTemplateServer
Requirements
Заголовок: afxdisp.h
COleTemplateServer::COleTemplateServer
Формирует объект COleTemplateServer.
COleTemplateServer();
Remarks
Краткое описание использования COleTemplateServer класса см. в обзоре класса COleLinkingDoc .
COleTemplateServer::ConnectTemplate
Подключает шаблон документа, на который указывает pDocTemplate , к базовому объекту COleObjectFactory .
void ConnectTemplate(
REFCLSID clsid,
CDocTemplate* pDocTemplate,
BOOL bMultiInstance);
Parameters
clsid
Ссылка на идентификатор класса OLE, запрашиваемого шаблоном.
pDocTemplate
Указатель на шаблон документа.
bMultiInstance
Указывает, может ли один экземпляр приложения поддерживать несколько экземпляров. Если значение TRUE, для каждого запроса для создания объекта запускается несколько экземпляров приложения.
Remarks
Дополнительные сведения см. в разделе CLSID Key in the Windows SDK.
COleTemplateServer::Unregister
Отменяет регистрацию связанного шаблона документа.
BOOL Unregister();
Возвращаемое значение
Значение 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
Определяет, должен ли класс быть зарегистрирован. Если bRegister имеет значение TRUE, класс регистрируется в системный реестр. В противном случае он отменяет регистрацию класса.
Remarks
Сведения о регистрации загружаются с помощью вызова CDocTemplate::GetDocString. Извлекаемые подстроки — это те, которые определяются индексами regFileTypeIdиregFileTypeNamefileNewName, как описано на GetDocString справочных страницах.
regFileTypeId Если подстрока пуста или если вызов завершается GetDocString ошибкой по какой-либо другой причине, эта функция завершается ошибкой, а сведения о файле не вводятся в реестре.
Сведения в аргументах rglpszRegister и rglpszOverwrite записываются в реестр с помощью вызова AfxOleRegisterServerClass. Сведения по умолчанию, зарегистрированные при наличии двух аргументов NULL, подходят для большинства приложений. Сведения о структуре информации в этих аргументах см. в разделе AfxOleRegisterServerClass.
Дополнительные сведения см. в разделе Implementing the IDispatch Interface.
См. также
Пример HIERSVR MFC
Класс COleObjectFactory
Диаграмма иерархии
Класс COleServerDoc
Класс COleServerItem