Compartir a través de


Método IQuickActivate::QuickActivate (ocidl.h)

Activa rápidamente un control.

Sintaxis

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

Parámetros

[in] pQaContainer

Puntero a la estructura QACONTAINER que contiene información sobre el contenedor.

[in, out] pQaControl

Puntero a la estructura QACONTROL rellenada por el control para devolver información sobre el control al contenedor. El contenedor que llama a este método debe reservar memoria para esta estructura.

Valor devuelto

Si el método se realiza correctamente, el valor devuelto es S_OK. De lo contrario, es E_FAIL.

Comentarios

Si el control no admite IQuickActivate, el contenedor realiza determinadas operaciones de protocolo de enlace cuando carga el control. El contenedor llama a determinadas interfaces en el control y el control, a su vez, llama a determinadas interfaces en el sitio cliente del contenedor. En primer lugar, el contenedor crea el objeto de control y llama a QueryInterface para consultar las interfaces que necesita. A continuación, el contenedor llama a IOleObject::SetClientSite en el control y pasa un puntero a su sitio cliente. A continuación, el control llama a QueryInterface en este sitio, recuperando un puntero a interfaces necesarias adicionales.

Con el método QuickActivate , el contenedor pasa un puntero a una estructura QACONTAINER . La estructura contiene punteros a interfaces que necesita el control y los valores de algunas propiedades ambientales que el control puede necesitar. Tras la devolución, el control pasa un puntero a una estructura QACONTROL, que contiene punteros requeridos por el contenedor a sus propias interfaces e información de estado adicional.

Los métodos IPersist*::Load e IPersist*::InitNew deben llamarse después de que se produzca la activación rápida. El control debe establecer sus conexiones con los receptores del contenedor durante la activación rápida. Sin embargo, estas conexiones no están activas hasta que se haya llamado a IPersist*::Load o IPersist*::InitNew .

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado ocidl.h

Consulte también

IPersistFile

IPersistStorage

Ipersiststream

IPersistStreamInit

IQuickActivate