Серверы активных документов
Активные серверы документов, такие как Word, Excel или PowerPoint, размещают документы других типов приложений, называемые активными документами. В отличие от внедренных объектов OLE (которые просто отображаются на странице другого документа), активные документы предоставляют полный интерфейс и полные собственные функциональные возможности серверного приложения, создающего их. Пользователи могут создавать документы с помощью полной мощности своих любимых приложений (если они включены в активном документе), но могут рассматривать полученный проект как одну сущность.
Активные документы могут иметь несколько страниц и всегда являются активными. Активные документы управляют частью пользовательского интерфейса, объединяя их меню с меню "Файл " и "Справка " контейнера. Они занимают всю область редактирования контейнера и управляют представлениями и макетом страницы принтера (поля, нижние колонтитулы и т. д.).
MFC реализует активные серверы документов с интерфейсами документов и представлениями, картами отправки команд, печатью, управлением меню и управлением реестрами. Конкретные требования к программированию рассматриваются в активных документах.
MFC поддерживает активные документы с классом CDocObjectServer, производным от CCmdTarget и CDocObjectServerItem, производным от COleServerItem. MFC поддерживает активные контейнеры документов с классом COleDocObjectItem , производным от COleClientItem.
CDocObjectServer
сопоставляет активные интерфейсы документов и инициализирует и активирует активный документ. MFC также предоставляет макросы для обработки маршрутизации команд в документах ACTIVE. Чтобы использовать активные документы в приложении, включите AfxDocOb.h в файл StdAfx.h.
Обычный сервер MFC подключает собственный COleServerItem
производный класс. Мастер приложений MFC создает этот класс, если выбрать мини-сервер или полный сервер проверка, чтобы обеспечить поддержку составного документа сервера приложений. Если также выбрать проверка активного сервера документов, мастер приложений MFC создает класс, производный от CDocObjectServerItem
этого.
Класс COleDocObjectItem
позволяет контейнеру OLE стать активным контейнером документов. Мастер приложений MFC можно использовать для создания активного контейнера документов, выбрав контейнер active document проверка box на странице поддержки составных документов мастера приложений MFC. Дополнительные сведения см. в разделе "Создание активного приложения контейнера документов".