Klasa IDispEventSimpleImpl

Ta klasa zawiera implementacje IDispatch metod bez uzyskiwanie informacji o typie z biblioteki typów.

Ważna uwagaWaż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

IDispEventSimpleImpl::Advise

Ustanawia połączenie z domyślnego źródła zdarzeń.

IDispEventSimpleImpl::DispEventAdvise

Ustanawia połączenie ze źródłem zdarzeń.

IDispEventSimpleImpl::DispEventUnadvise

Zrywa połączenie ze źródłem zdarzeń.

IDispEventSimpleImpl::GetIDsOfNames

Zwraca E_NOTIMPL.

IDispEventSimpleImpl::GetTypeInfo

Zwraca E_NOTIMPL.

IDispEventSimpleImpl::GetTypeInfoCount

Zwraca E_NOTIMPL.

IDispEventSimpleImpl::Invoke

Wywołań obsługi zdarzeń w przypadku wymienionych sink mapy.

IDispEventSimpleImpl::Unadvise

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

Zobacz też

Informacje

Struktura _ATL_FUNC_INFO

Klasa IDispatchImpl

Klasa IDispEventImpl

SINK_ENTRY_INFO

Inne zasoby

Omówienie klasy ATL