Klasa IDispEventSimpleImpl
Ta klasa zawiera implementacje IDispatch metod bez uzyskiwanie informacji o typie z biblioteki typów.
Ważne |
---|
Nie można użyć tej klasy i jej członków w aplikacjach, które są wykonywane w Środowisko wykonawcze systemu Windows. |
template <
UINT nID,
class T,
const IID* pdiid
>
class ATL_NO_VTABLE IDispEventSimpleImpl :
public _IDispEventLocator<nID, pdiid>
Parametry
nID
Identyfikator unikatowy dla obiektu źródłowego.Gdy IDispEventSimpleImpl jest klasą podstawową dla formantu złożonego należy użyć Identyfikatora zasobu żądanego formantu zawarte dla tego parametru.W innych przypadkach należy użyć dowolnego dodatnią liczbą całkowitą.T
Klasy użytkownika, który pochodzi od IDispEventSimpleImpl.pdiid
Wskaźnik celu uzyskanie identyfikatora IID Interfejs rozdzielania zdarzeń implementowana przez tę klasę.
Członkowie
Metody publiczne
Nazwa |
Opis |
---|---|
Ustanawia połączenie z domyślnego źródła zdarzeń. |
|
Ustanawia połączenie ze źródłem zdarzeń. |
|
Zrywa połączenie ze źródłem zdarzeń. |
|
Zwraca E_NOTIMPL. |
|
Zwraca E_NOTIMPL. |
|
Zwraca E_NOTIMPL. |
|
Wywołań obsługi zdarzeń w przypadku wymienionych sink mapy. |
|
Zrywa połączenie z domyślnego źródła zdarzeń. |
Uwagi
IDispEventSimpleImplzapewnia sposób wykonawczych Interfejs rozdzielania zdarzeń bez konieczności wykonania kodu dla każdej metody i zdarzeń na tym interfejsie dostaw.IDispEventSimpleImplzawiera implementacje IDispatch metody.Trzeba dostarczyć implementacji zdarzenia jesteś zainteresowany obsługi.
IDispEventSimpleImpldziała w połączeniu z mapy obiektu sink zdarzenia w klasie zdarzeń trasy do funkcji obsługi odpowiedniego.Aby użyć tej klasy:
Dodaj SINK_ENTRY_INFO makro do mapy obiektu sink zdarzenia dla każdego zdarzenia dla każdego obiektu, który chcesz obsługiwać.
Dostarczania informacji typu dla każdego zdarzenia, przekazując wskaźnik do _ATL_FUNC_INFO struktury jako parametr dla każdego wpisu.Na platformie x 86 _ATL_FUNC_INFO.cc wartość musi być CC_CDECL z funkcji wywołania zwrotnego, wywołanie metody __stdcall.
Wywołanie DispEventAdvise do ustanowienia połączenia między obiektem źródłowym i klasy podstawowej.
Wywołanie DispEventUnadvise , aby przerwać połączenie.
Muszą pochodzić od IDispEventSimpleImpl (przy użyciu unikatową wartość dla nID) dla każdego obiektu, dla którego są wymagane do obsługi zdarzeń.Można ponownie użyć klasy bazowej przez unadvising przeciwko obiektu jednego źródła, następnie doradzanie przeciwko obiekt innego źródła, ale maksymalną liczbę obiektów źródła, które mogą być obsługiwane przez pojedynczy obiekt jednocześnie jest ograniczona przez liczbę IDispEventSimpleImpl klasy base.
IDispEventSimplImpl zapewnia taką samą funkcjonalność jak IDispEventImpl, z wyjątkiem nie uzyskać typ informacji o interfejsie z biblioteki typów.Kreatorzy generowania kodu tylko na podstawie IDispEventImpl, ale można użyć IDispEventSimpleImpl przez dodanie kodu ręcznie.Użyj IDispEventSimpleImpl po nie opisujące interfejsu zdarzenia typu biblioteki lub aby uniknąć obciążenie związane z używaniem biblioteki typów.
[!UWAGA]
IDispEventImpli IDispEventSimpleImpl zapewnienia realizacji z IUnknown::QueryInterface umożliwiających każdej IDispEventImpl lub IDispEventSimpleImpl działać jako oddzielną tożsamość COM, umożliwiając bezpośredni dostęp do elementów klas w głównym obiekt COM klasy base.
Wdrożenie CE ATL ActiveX obsługuje tylko ujść zdarzeń zwracają wartości typu HRESULT lub unieważnić swoje metody obsługi zdarzenia; inne wartości zwracanej nie jest obsługiwane i jego zachowanie jest niezdefiniowane.
Aby uzyskać więcej informacji, zobacz Obsługa IDispEventImpl.
Hierarchii dziedziczenia
_IDispEvent
_IDispEventLocator
IDispEventSimpleImpl
Wymagania
Nagłówek: atlcom.h