Поделиться через


Метод IQuickActivate::QuickActivate (ocidl.h)

Быстрая активация элемента управления.

Синтаксис

HRESULT QuickActivate(
  [in]      QACONTAINER *pQaContainer,
  [in, out] QACONTROL   *pQaControl
);

Параметры

[in] pQaContainer

Указатель на структуру QACONTAINER, содержащую сведения о контейнере.

[in, out] pQaControl

Указатель на структуру QACONTROL , заполненную элементом управления для возврата сведений об элементе управления в контейнер. Контейнер, вызывающий этот метод, должен зарезервировать память для этой структуры.

Возвращаемое значение

Если метод выполнен успешно, возвращаемое значение будет S_OK. В противном случае это E_FAIL.

Комментарии

Если элемент управления не поддерживает IQuickActivate, контейнер выполняет определенные операции подтверждения при загрузке элемента управления. Контейнер вызывает определенные интерфейсы в элементе управления, а элемент управления, в свою очередь, вызывает определенные интерфейсы на клиентском сайте контейнера. Сначала контейнер создает объект элемента управления и вызывает QueryInterface для запроса необходимых интерфейсов. Затем контейнер вызывает IOleObject::SetClientSite для элемента управления , передав указатель на его клиентский сайт. Затем элемент управления вызывает QueryInterface на этом сайте, получая указатель на дополнительные необходимые интерфейсы.

С помощью метода QuickActivate контейнер передает указатель на структуру QACONTAINER . Структура содержит указатели на интерфейсы, необходимые элементу управления, и значения некоторых свойств окружения, которые могут потребоваться элементу управления. После возврата элемент управления передает указатель на структуру QACONTROL , содержащую указатели на собственные интерфейсы, необходимые контейнеру, и дополнительные сведения о состоянии.

Методы IPersist*::Load и IPersist*::InitNew следует вызывать после быстрой активации. Элемент управления должен устанавливать подключения к приемникам контейнера во время быстрой активации. Однако эти подключения не будут динамичной до вызова IPersist*::Load или IPersist*::InitNew .

Требования

   
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header ocidl.h

См. также раздел

IPersistFile

IPersistStorage

IPersistStream

IPersistStreamInit

IQuickActivate