Аннотация

Элемент управления ActiveX должен реализовывать интерфейс IProvideClassInfo или IProvideClassInfo2 для обработки событий на веб-странице. Microsoft Internet Explorer использует этот интерфейс для получения библиотеки типов для элемента управления и определить набор доступных событий.

Дополнительная информация

Используя язык сценариев, как VBScript и JavaScript, автор веб-страницы может использовать автоматизацию для вызова методов или свойств и обрабатывать события для элемента управления ActiveX, помещаются на страницу с помощью тега HTML < OBJECT >. Для элемента управления ActiveX для поддержки таких событий он должен реализовать интерфейс IProvideClassInfo или IProvideClassInfo2. Internet Explorer запрашивает элемент управления для этих интерфейсов и если реализован, вызывается метод GetClassInfo() для получения библиотеки типов для элемента управления. Internet Explorer первоначально запрос к элементу управления для IProvideClassInfo2 и, если этот метод не реализован, затем будет запрашивать IProvideClassInfo.The IProvideClassInfo2 интерфейс является производным от IProvideClassInfo и предоставляет дополнительный метод, GetGUID() , который возвращает объект исходящие идентификатор интерфейса по умолчанию набор событий. Для элементов управления ActiveX, разработанных с помощью классов MFC по умолчанию реализуется интерфейс IProvideClassInfo2. Для элементов управления ActiveX, разработанные с помощью Microsoft Visual Basic интерфейс IProvideClassInfo реализуется по умолчанию. При использовании Microsoft Active Template Library (ATL), версия 3.0, следующие объекты ATL «упрощенный доступ» не реализует интерфейс IProvideClassInfo2 по умолчанию:

  • Простой объект

  • Internet Explorer объекта

  • Lite управления

  • Lite составной элемент управления

  • Lite HTML-элемент управления

Можно легко добавить поддержку для обработки путем реализации интерфейса IProvideClassInfo событий. Это делается путем наследования от реализации библиотеки ATL по умолчанию, IProvideClassInfo2Impl элемент управления.

  1. Список наследования класса добавьте следующую строку:

       public IProvideClassInfo2Impl<&CLSID_<object_name>, NULL,                                 &LIBID_<project_name>Lib>
  2. Добавьте следующие строки к COM_MAP:

       COM_INTERFACE_ENTRY(IProvideClassInfo)   COM_INTERFACE_ENTRY(IProvideClassInfo2)

Ссылки

Дополнительные сведения о реализации элементов управления ActiveX и библиотеки ATL обратитесь к документации в Интернете Microsoft Visual C++. Дополнительные сведения о разработке веб-приложений для Microsoft Internet Explorer, посетите следующие веб-узлы корпорации Майкрософт:

http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep(c) Корпорация Майкрософт, 1999, все права защищены. Взносы в знак Владислав, корпорация Майкрософт.

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.