IAxWinHostWindow, interface

Cette interface fournit des méthodes pour manipuler un contrôle et son objet hôte.

Important

Cette classe et ses membres ne peuvent pas être utilisés dans les applications qui s’exécutent dans Windows Runtime.

Syntaxe

interface IAxWinHostWindow : IUnknown

Membres

Méthodes

Nom Description
AttachControl Attache un contrôle existant à l’objet hôte.
CreateControl Crée un contrôle et l’attache à l’objet hôte.
CreateControlEx Crée un contrôle, l’attache à l’objet hôte et configure éventuellement un gestionnaire d’événements.
QueryControl Retourne un pointeur d’interface vers le contrôle hébergé.
SetExternalDispatch Définit l’interface externe IDispatch .
SetExternalUIHandler Définit l’interface externe IDocHostUIHandlerDispatch .

Notes

Cette interface est exposée par les objets d’hébergement de contrôle ActiveX d’ATL. Appelez les méthodes de cette interface pour créer et/ou attacher un contrôle à l’objet hôte, pour obtenir une interface à partir d’un contrôle hébergé ou pour définir le gestionnaire de dispinterface externe ou d’interface utilisateur à utiliser lors de l’hébergement du navigateur web.

Spécifications

La définition de cette interface est disponible en tant que IDL ou C++, comme indiqué ci-dessous.

Type de définition File
IDL ATLIFace.idl
C++ ATLIFace.h (également inclus dans ATLBase.h)

IAxWinHostWindow ::AttachControl

Attache un contrôle existant (et précédemment initialisé) à l’objet hôte à l’aide de la fenêtre identifiée par hWnd.

STDMETHOD(AttachControl)(IUnknown* pUnkControl, HWND hWnd);

Paramètres

pUnkControl
[in] Pointeur vers l’interface IUnknown du contrôle à attacher à l’objet hôte.

hWnd
[in] Handle vers la fenêtre à utiliser pour l’hébergement.

Valeur de retour

Valeur HRESULT standard.

IAxWinHostWindow ::CreateControl

Crée un contrôle, l’initialise et l’héberge dans la fenêtre identifiée par hWnd.

STDMETHOD(CreateControl)(
    LPCOLESTR lpTricsData,
    HWND hWnd,
    IStream* pStream);

Paramètres

lpTricsData
[in] Chaîne identifiant le contrôle à créer. Il peut s’agir d’un CLSID (doit inclure les accolades), ProgID, URL ou HTML brut (préfixé par MSHTML :).

hWnd
[in] Handle vers la fenêtre à utiliser pour l’hébergement.

pStream
[in] Pointeur d’interface pour un flux contenant des données d’initialisation pour le contrôle. Sa valeur peut être NULL.

Valeur de retour

Valeur HRESULT standard.

Notes

Cette fenêtre sera sous-classée par l’objet hôte exposant cette interface afin que les messages puissent être reflétés dans le contrôle et d’autres fonctionnalités de conteneur fonctionneront.

L’appel de cette méthode équivaut à appeler IAxWinHostWindow ::CreateControlEx.

Pour créer un contrôle ActiveX sous licence, consultez IAxWinHostWindowLic ::CreateControlLic.

IAxWinHostWindow ::CreateControlEx

Crée un contrôle ActiveX, l’initialise et l’héberge dans la fenêtre spécifiée, comme IAxWinHostWindow ::CreateControl.

STDMETHOD(CreateControlEx)(
    LPCOLESTR lpszTricsData,
    HWND hWnd,
    IStream* pStream,
    IUnknown** ppUnk,
    REFIID riidAdvise,
    IUnknown* punkAdvise);

Paramètres

lpTricsData
[in] Chaîne identifiant le contrôle à créer. Il peut s’agir d’un CLSID (doit inclure les accolades), ProgID, URL ou HTML brut (précédé de MSHTML :).

hWnd
[in] Handle vers la fenêtre à utiliser pour l’hébergement.

pStream
[in] Pointeur d’interface pour un flux contenant des données d’initialisation pour le contrôle. Sa valeur peut être NULL.

ppUnk
[out] Adresse d’un pointeur qui recevra l’interface IUnknown du contrôle créé. Sa valeur peut être NULL.

riidAdvise
[in] Identificateur d’interface d’une interface sortante sur l’objet contenu. Peut être IID_NULL.

punkAdvise
[in] Pointeur vers l’interface IUnknown de l’objet récepteur à connecter au point de connexion sur l’objet contenu spécifié par iidSink.

Valeur de retour

Valeur HRESULT standard.

Notes

Contrairement à la CreateControl méthode, CreateControlEx vous pouvez également recevoir un pointeur d’interface vers le contrôle nouvellement créé et configurer un récepteur d’événements pour recevoir les événements déclenchés par le contrôle.

Pour créer un contrôle ActiveX sous licence, consultez IAxWinHostWindowLic ::CreateControlLicEx.

IAxWinHostWindow ::QueryControl

Retourne le pointeur d’interface spécifié fourni par le contrôle hébergé.

STDMETHOD(QueryControl)(
    REFIID riid,
    void** ppvObject);

Paramètres

riid
[in] ID d’une interface sur le contrôle demandé.

ppvObject
[out] Adresse d’un pointeur qui recevra l’interface spécifiée du contrôle créé.

Valeur de retour

Valeur HRESULT standard.

IAxWinHostWindow ::SetExternalDispatch

Définit la dispinterface externe, disponible pour les contrôles contenus via la méthode IDocHostUIHandlerDispatch ::GetExternal .

STDMETHOD(SetExternalDispatch)(IDispatch* pDisp);

Paramètres

pDisp
[in] Pointeur vers une IDispatch interface.

Valeur de retour

Valeur HRESULT standard.

IAxWinHostWindow ::SetExternalUIHandler

Appelez cette fonction pour définir l’interface IDocHostUIHandlerDispatch externe de l’objetCAxWindow.

STDMETHOD(SetExternalUIHandler)(IDocHostUIHandlerDispatch* pDisp);

Paramètres

pDisp
[in] Pointeur vers une IDocHostUIHandlerDispatch interface.

Valeur de retour

Valeur HRESULT standard.

Notes

Cette fonction est utilisée par les contrôles (tels que le contrôle de navigateur web) qui interrogent le site de l’hôte pour l’interface IDocHostUIHandlerDispatch .

Voir aussi

IAxWinAmbientDispatch, interface
CAxWindow ::QueryHost
AtlAxGetHost