Dotyczy
General

Podsumowanie

Formant ActiveX musi implementować interfejs IProvideClassInfo lub IProvideClassInfo2, aby włączyć obsługę zdarzeń na stronie sieci Web. Program Microsoft Internet Explorer używa tego interfejsu w celu uzyskania biblioteki typów dla formantu i określić zestaw dostępnych zdarzeń.

Więcej informacji

Język skryptów, takich jak VBScript lub JavaScript, autor strony sieci Web przy użyciu automatyzacji do wywołania metody, właściwości i obsługi zdarzeń dla formantu ActiveX, umieszczonego na stronie z tagu HTML < OBJECT >. Dla formantu ActiveX do obsługi takiej obsługi zdarzeń musi implementować interfejs IProvideClassInfo lub IProvideClassInfo2. Program Internet Explorer bada kontroli tych interfejsów i jeśli zaimplementowana, wywołuje metodę GetClassInfo() w celu uzyskania biblioteki typów dla formantu. Program Internet Explorer będzie początkowo zapytanie kontroli IProvideClassInfo2 i, jeśli nie zostanie zaimplementowana, następnie wyśle zapytanie IProvideClassInfo.The IProvideClassInfo2 interfejsu jest pochodną IProvideClassInfo i zapewnia dodatkowe metody, GetGUID() , która zwraca obiekt wychodzący identyfikator interfejsu dla jego domyślnego zestawu zdarzeń. W przypadku formantów ActiveX opracowanych przy użyciu programu Microsoft Foundation Classes IProvideClassInfo2 interfejsu jest implementowana przez domyślny. W przypadku formantów ActiveX opracowanych przy użyciu programu Microsoft Visual Basic IProvideClassInfo interfejsu jest implementowana przez domyślny. Podczas korzystania z programu Microsoft Active Template Library (ATL), wersja 3.0, następujące obiekty ATL "kontrola lite" nie implementuje interfejsu IProvideClassInfo2 domyślnie:

  • Prosty obiekt

  • Internet Explorer obiektu

  • Formant Lite

  • Formant złożony Lite

  • Lite formant HTML

Można łatwo dodać obsługę zdarzeń obsługi za pomocą implementacji interfejsów IProvideClassInfo. Polega to na wynikające z formantu Domyślna implementacja ATL IProvideClassInfo2Impl.

  1. Dodaj następujący wiersz do listy wyprowadzenie klasy:

       public IProvideClassInfo2Impl<&CLSID_<object_name>, NULL,                                 &LIBID_<project_name>Lib>
  2. Dodaj następujące wiersze do Twojego COM_MAP:

       COM_INTERFACE_ENTRY(IProvideClassInfo)   COM_INTERFACE_ENTRY(IProvideClassInfo2)

Informacje

Aby uzyskać więcej informacji na temat biblioteki Active Template Library i wykonawczych formantów ActiveX zapoznaj się z dokumentacją programu Microsoft Visual C++ Online. Aby uzyskać więcej informacji dotyczących projektowania rozwiązań opartych na sieci Web dla programu Microsoft Internet Explorer, odwiedź następujące witryny firmy Microsoft w sieci Web:

http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep(c) 1999 Microsoft Corporation Wszelkie prawa zastrzeżone. Składek przez Mark Davis, firma Microsoft Corporation.

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.