Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В следующих таблицах перечислены интерфейсы, реализованные контейнерами OLE, серверами OLE и составными объектами документов. Необходимые интерфейсы должны быть реализованы на компонентах, для которых они перечислены. Все остальные функции являются необязательными. Однако если вы хотите включить в приложение определенную функцию, необходимо реализовать интерфейсы, отображаемые для этой функции в таблице ниже. Все остальные интерфейсы необходимы только в том случае, если вы включаете определенную функцию.
В следующей таблице перечислены обязательные и необязательные поведения для контейнеров OLE, а также интерфейсы, которые необходимо реализовать для каждого.
| Поведение | Интерфейсы |
|---|---|
| Требуемое поведение |
IOleClientSite IAdviseSink |
| Фильтрация сообщений |
IMessageFilter |
| Связывание |
никакой |
| Связывание с внедренным объектами |
IOleItemContainer IPersistFile IClassFactory |
| Активация на месте |
IOleInPlaceSite IOleInPlaceFrame IOleInPlaceObject |
| Перетащите и перетащите |
IDropSource IDropTarget IDataObject |
В следующей таблице перечислены обязательные и необязательные действия для серверов OLE и их составных объектов документов, а также интерфейсы, которые необходимо реализовать для каждого. Таблица различает серверы OLE и их объекты, чтобы уточнить, какой компонент реализует интерфейсы. В таблице также отмечаются различные требования объектов, предоставляемых внепроцессными серверами и непроцессными серверами.
| Особенность | OLE Server | Объект (внепроцессный) | Объект (внутрипроцессный) |
|---|---|---|---|
| Требуемое поведение |
IClassFactory |
IOleObject IDataObject IPersistStorage |
IOleObject IDataObject IPersistStorage IViewObject2 IOleCache2 |
| Фильтрация сообщений |
IMessageFilter |
||
| Связывание |
IOleItemContainer IPersistFile |
IOleLink IExternalConnection |
|
| Активация на месте |
IOleInPlaceObject IOleInPlaceActiveObject |
IOleInPlaceObject IOleInPlaceActiveObject |
|
| Перетащите и перетащите |
IDropSource IDropTarget IDataObject |