Составные интерфейсы документов
В следующих таблицах перечислены интерфейсы, реализованные контейнерами OLE, серверами OLE и составными объектами документов. Необходимые интерфейсы должны быть реализованы на компонентах, для которых они перечислены. Все остальные функции являются необязательными. Однако если вы хотите включить в приложение определенную функцию, необходимо реализовать интерфейсы, отображаемые для этой функции в таблице ниже. Все остальные интерфейсы необходимы только в том случае, если вы включаете определенную функцию.
В следующей таблице перечислены обязательные и необязательные поведения для контейнеров OLE, а также интерфейсы, которые необходимо реализовать для каждого.
Поведение | Интерфейсы |
---|---|
Требуемое поведение |
IOleClientSite IAdviseSink |
Фильтрация сообщений |
Imessagefilter |
Связывание |
ничего |
Связывание с внедренным объектами |
IOleItemContainer IPersistFile IClassFactory |
Активация на месте |
IOleInPlaceSite IOleInPlaceFrame IOleInPlaceObject |
Перетаскивание |
IDropSource IDropTarget Idataobject |
В следующей таблице перечислены обязательные и необязательные действия для серверов OLE и их составных объектов документов, а также интерфейсы, которые необходимо реализовать для каждого. Таблица различает серверы OLE и их объекты, чтобы уточнить, какой компонент реализует интерфейсы. В таблице также отмечаются различные требования объектов, предоставляемых внепроцессными серверами и непроцессными серверами.
Функция | OLE Server | Объект (внепроцессный) | Объект (внутрипроцессный) |
---|---|---|---|
Требуемое поведение | IClassFactory |
IOleObject Idataobject IPersist служба хранилища |
IOleObject Idataobject IPersist служба хранилища IViewObject2 IOleCache2 |
Фильтрация сообщений |
Imessagefilter |
||
Связывание |
IOleItemContainer IPersistFile |
IOleLink IExternal Подключение ion |
|
Активация на месте |
IOleInPlaceObject IOleInPlaceActiveObject |
IOleInPlaceObject IOleInPlaceActiveObject |
|
Перетаскивание |
IDropSource IDropTarget Idataobject |
См. также
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по