12.04.2014 Views

6 folii na stronę

6 folii na stronę

6 folii na stronę

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

A<strong>na</strong>tomia ActiveX<br />

A<strong>na</strong>tomia ActiveX<br />

Kontener<br />

IOleInPlaceFrame<br />

IOleInPlaceUIWindow<br />

IOleInPlaceSite<br />

IOleClientSite<br />

IAdviseSink<br />

IOleControlSite<br />

IDispatch<br />

IPropertyNotifySink<br />

IDispatch (events)<br />

• metody:<br />

– realizowane w postaci<br />

dispatch interfejsu<br />

Institute of Informatics, Silesian University of Technology, Gliwice, Poland<br />

IOleInPlaceActiveObject<br />

IOleInPlaceObject<br />

IOleObject<br />

IRun<strong>na</strong>bleObject<br />

IDataObject<br />

IViewObject2<br />

IOleCache2<br />

IPersistStorage<br />

IPersistStreamInit<br />

ISpecifyPropertyPages<br />

IConnectionPointContainer<br />

IConnectionPoint<br />

IProvideClassInfo2<br />

IDispatch<br />

IOleControl<br />

Kontrolka<br />

ActiveX<br />

Kontener<br />

IOleInPlaceFrame<br />

IOleInPlaceUIWindow<br />

IOleInPlaceSite<br />

IOleClientSite<br />

IAdviseSink<br />

IOleControlSite<br />

IDispatch<br />

IPropertyNotifySink<br />

IDispatch (events)<br />

IOleInPlaceActiveObject<br />

IOleInPlaceObject<br />

IOleObject<br />

IRun<strong>na</strong>bleObject<br />

IDataObject<br />

IViewObject2<br />

IOleCache2<br />

IPersistStorage<br />

IPersistStreamInit<br />

ISpecifyPropertyPages<br />

IConnectionPointContaine<br />

• zdarzenia:<br />

– po stronie kontrolki:<br />

punkty kontrolne<br />

(connection points),<br />

informacja o typach<br />

IConnectionPoint r<br />

– po stronie kontenera: IProvideClassInfo2<br />

dy<strong>na</strong>micznie tworzony<br />

IDispatch<br />

Institute of dispatch Informatics, Silesian interfejs University of Technology, Gliwice, Poland IOleControl<br />

Kontrolka<br />

ActiveX<br />

A<strong>na</strong>tomia ActiveX<br />

A<strong>na</strong>tomia ActiveX<br />

Kontener<br />

• właściwości:<br />

– trwałość właściwości<br />

– obsługa w dispatch<br />

interface<br />

– property pages<br />

IOleInPlaceFrame<br />

IOleInPlaceUIWindow<br />

IOleInPlaceSite<br />

IOleClientSite<br />

IAdviseSink<br />

IOleControlSite<br />

IDispatch<br />

IPropertyNotifySink<br />

IDispatch (events)<br />

Institute of Informatics, Silesian University of Technology, Gliwice, Poland<br />

IOleInPlaceActiveObject<br />

IOleInPlaceObject<br />

IOleObject<br />

IRun<strong>na</strong>bleObject<br />

IDataObject<br />

IViewObject2<br />

IOleCache2<br />

IPersistStorage<br />

IPersistStreamInit<br />

ISpecifyPropertyPages<br />

IConnectionPointContainer<br />

IConnectionPoint<br />

IProvideClassInfo2<br />

IDispatch<br />

IOleControl<br />

Kontrolka<br />

ActiveX<br />

Kontener<br />

IOleInPlaceFrame<br />

IOleInPlaceUIWindow<br />

IOleInPlaceSite<br />

IOleClientSite<br />

IAdviseSink<br />

IOleControlSite<br />

IDispatch<br />

IPropertyNotifySink<br />

IDispatch (events)<br />

IOleInPlaceActiveObject<br />

IOleInPlaceObject<br />

IOleObject<br />

IRun<strong>na</strong>bleObject<br />

IDataObject<br />

IViewObject2<br />

IOleCache2<br />

• interfejsy specyficzne:<br />

IPersistStorage<br />

– niewielkie interfejsy<br />

IPersistStreamInit<br />

ibejmujące<br />

ISpecifyPropertyPages<br />

funkcjo<strong>na</strong>lność<br />

IConnectionPointContainer<br />

IConnectionPoint<br />

nieobjętą przez<br />

IProvideClassInfo2<br />

pozostałe interfejsy<br />

IDispatch<br />

Institute of Informatics, Silesian University of Technology, Gliwice, PolandIOleControl<br />

Kontrolka<br />

ActiveX<br />

Podsumowanie<br />

• Kontrolki ActiveX w większości opierają się <strong>na</strong><br />

innych, z<strong>na</strong>nych technologiach (OLE,<br />

connection points, dispatch interfaces)<br />

• Peł<strong>na</strong> funkcjo<strong>na</strong>lność obejmuje <strong>na</strong> tyle dużą<br />

liczbę interfejsów, że w praktyce nigdy nie<br />

implementuje się ActiveX bez specjalizowanych<br />

<strong>na</strong>rzędzi<br />

• Ostatnie zdanie dotyczy w pewnym sensie całej<br />

technologii COM<br />

Institute of Informatics, Silesian University of Technology, Gliwice, Poland<br />

2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!