Partager via


IAtlMemMgr, classe

Cette classe représente l’interface d’un gestionnaire de mémoire.

Syntaxe

__interface __declspec(uuid("654F7EF5-CFDF-4df9-A450-6C6A13C622C0")) IAtlMemMgr

Membres

Méthodes

Nom Description
Allouer Appelez cette méthode pour allouer un bloc de mémoire.
Gratuit Appelez cette méthode pour libérer un bloc de mémoire.
GetSize Appelez cette méthode pour récupérer la taille d’un bloc de mémoire alloué.
Réaffecter Appelez cette méthode pour réallouer un bloc de mémoire.

Notes

Cette interface est implémentée par CComHeap, CCRTHeap, CLocalHeap, CGlobalHeap ou CWin32Heap.

Remarque

Les fonctions de tas locales et globales sont plus lentes que d’autres fonctions de gestion de la mémoire et ne fournissent pas autant de fonctionnalités. Par conséquent, les nouvelles applications doivent utiliser les fonctions de tas. Ceux-ci sont disponibles dans la classe CWin32Heap .

Exemple

// Demonstrate IAtlMemMgr using the five possible
// memory function implementation classes. 

HRESULT MemoryManagerDemonstration(IAtlMemMgr& MemoryManager) throw()
{
   // The IAtlMemMgr interface guarantees not to throw exceptions
   // so we can make the same guarantee for this function
   // without adding exception handling code.

   // A variable which will point to some allocated memory.
   void* pMemory = NULL;

   const size_t BytesInChunk = 1024;

   // Allocate a chunk of memory
   pMemory = MemoryManager.Allocate(BytesInChunk);

   // Confirm the validity of the allocated memory
   if (pMemory == NULL)
      return E_OUTOFMEMORY;

   // Confirm the size of the allocated memory
   ATLASSERT(MemoryManager.GetSize(pMemory) == BytesInChunk);

   // Increase the size of the allocated memory
   pMemory = MemoryManager.Reallocate(pMemory, BytesInChunk * 2);

   // Confirm the validity of the allocated memory
   if (pMemory == NULL)
      return E_OUTOFMEMORY;

   // Confirm the size of the reallocated  memory
   ATLASSERT(MemoryManager.GetSize(pMemory) == BytesInChunk * 2);

   // Free the allocated memory
   MemoryManager.Free(pMemory);

   return S_OK;
}

int DoMemoryManagerDemonstration()
{
   CComHeap heapCom;
   CCRTHeap heapCrt;
   CLocalHeap heapLocal;
   CGlobalHeap heapGlobal;
   // It is necessary to provide extra information 
   // to the constructor when using CWin32Heap
   CWin32Heap heapWin32(NULL, 4096); 

   ATLASSERT(S_OK==MemoryManagerDemonstration(heapCom));
   ATLASSERT(S_OK==MemoryManagerDemonstration(heapCrt));
   ATLASSERT(S_OK==MemoryManagerDemonstration(heapLocal));
   ATLASSERT(S_OK==MemoryManagerDemonstration(heapGlobal));
   ATLASSERT(S_OK==MemoryManagerDemonstration(heapWin32));

   return 0;
}

Spécifications

En-tête : atlmem.h

IAtlMemMgr ::Allocate

Appelez cette méthode pour allouer un bloc de mémoire.

void* Allocate(size_t nBytes) throw();

Paramètres

octets
Nombre demandé d'octets dans le nouveau bloc de mémoire.

Valeur de retour

Retourne un pointeur vers le début du bloc de mémoire nouvellement alloué.

Notes

Appelez IAtlMemMgr ::Free ou IAtlMemMgr ::Reallocate pour libérer la mémoire allouée par cette méthode.

Exemple

Pour obtenir un exemple, consultez la vue d’ensemble d’IAtlMemMgr.

IAtlMemMgr ::Free

Appelez cette méthode pour libérer un bloc de mémoire.

void Free(void* p) throw();

Paramètres

p
Pointeur vers la mémoire précédemment allouée par ce gestionnaire de mémoire.

Notes

Utilisez cette méthode pour libérer de la mémoire obtenue par IAtlMemMgr ::Allocate ou IAtlMemMgr ::Reallocate.

Exemple

Pour obtenir un exemple, consultez la vue d’ensemble d’IAtlMemMgr.

IAtlMemMgr ::GetSize

Appelez cette méthode pour récupérer la taille d’un bloc de mémoire alloué.

size_t GetSize(void* p) throw();

Paramètres

p
Pointeur vers la mémoire précédemment allouée par ce gestionnaire de mémoire.

Valeur de retour

Retourne la taille du bloc de mémoire en octets.

Exemple

Pour obtenir un exemple, consultez la vue d’ensemble d’IAtlMemMgr.

IAtlMemMgr ::Reallocate

Appelez cette méthode pour réallouer la mémoire allouée par ce gestionnaire de mémoire.

void* Reallocate(void* p, size_t nBytes) throw();

Paramètres

p
Pointeur vers la mémoire précédemment allouée par ce gestionnaire de mémoire.

octets
Nombre demandé d'octets dans le nouveau bloc de mémoire.

Valeur de retour

Retourne un pointeur vers le début du bloc de mémoire nouvellement alloué.

Notes

Appelez IAtlMemMgr ::Free ou IAtlMemMgr ::Reallocate pour libérer la mémoire allouée par cette méthode.

Conceptuellement, cette méthode libère la mémoire existante et alloue un nouveau bloc de mémoire. En réalité, la mémoire existante peut être étendue ou réutilisée.

Exemple

Pour obtenir un exemple, consultez la vue d’ensemble d’IAtlMemMgr.

IAxWinAmbientDispatch ::get_AllowContextMenu

La AllowContextMenu propriété spécifie si le contrôle hébergé est autorisé à afficher son propre menu contextuel.

STDMETHOD(get_AllowContextMenu)(VARIANT_BOOL* pbAllowContextMenu);

Paramètres

pbAllowContextMenu
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_TRUE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::get_AllowShowUI

La AllowShowUI propriété spécifie si le contrôle hébergé est autorisé à afficher sa propre interface utilisateur.

STDMETHOD(get_AllowShowUI)(VARIANT_BOOL* pbAllowShowUI);

Paramètres

pbAllowShowUI
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_FALSE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::get_AllowWindowlessActivation

La AllowWindowlessActivation propriété spécifie si le conteneur autorise l’activation sans fenêtre.

STDMETHOD(get_AllowWindowlessActivation)(VARIANT_BOOL* pbAllowWindowless);

Paramètres

pbAllowWindowless
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_TRUE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::get_BackColor

La BackColor propriété spécifie la couleur d’arrière-plan ambiante du conteneur.

STDMETHOD(get_BackColor)(OLE_COLOR* pclrBackground);

Paramètres

pclrBackground
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise COLOR_BTNFACE ou COLOR_WINDOW comme valeur par défaut de cette propriété (selon que le parent de la fenêtre hôte est un dialogue ou non).

IAxWinAmbientDispatch ::get_DisplayAsDefault

DisplayAsDefault est une propriété ambiante qui permet à un contrôle de déterminer s’il s’agit du contrôle par défaut.

STDMETHOD(get_DisplayAsDefault)(VARIANT_BOOL* pbDisplayAsDefault);

Paramètres

pbDisplayAsDefault
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_FALSE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::get_DocHostDoubleClickFlags

La DocHostDoubleClickFlags propriété spécifie l’opération qui doit avoir lieu en réponse à un double-clic.

STDMETHOD(get_DocHostDoubleClickFlags)(DWORD* pdwDocHostDoubleClickFlags);

Paramètres

pdwDocHostDoubleClickFlags
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise DOCHOSTUIDBLCLK_DEFAULT comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::get_DocHostFlags

La DocHostFlags propriété spécifie les fonctionnalités d’interface utilisateur de l’objet hôte.

STDMETHOD(get_DocHostFlags)(DWORD* pdwDocHostFlags);

Paramètres

pdwDocHostFlags
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise DOCHOSTUIFLAG_NO3DBORDER comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::get_Font

La Font propriété spécifie la police ambiante du conteneur.

STDMETHOD(get_Font)(IFontDisp** pFont);

Paramètres

pFont
[out] Adresse d’un pointeur d’interface IFontDisp utilisé pour recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise la police GUI par défaut ou la police système comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::get_ForeColor

La ForeColor propriété spécifie la couleur de premier plan ambiante du conteneur.

STDMETHOD(get_ForeColor)(OLE_COLOR* pclrForeground);

Paramètres

pclrForeground
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise la couleur de texte de la fenêtre système comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::get_LocaleID

La LocaleID propriété spécifie l’ID des paramètres régionaux ambiants du conteneur.

STDMETHOD(get_LocaleID)(LCID* plcidLocaleID);

Paramètres

plcidLocaleID
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise les paramètres régionaux par défaut de l’utilisateur comme valeur par défaut de cette propriété.

Avec cette méthode, vous pouvez découvrir l’ID local ambiant, autrement dit, l’ID de paramètres régionaux du programme dans lequel votre contrôle est utilisé. Une fois que vous connaissez les paramètres régionaux, vous pouvez appeler du code pour charger des légendes spécifiques aux paramètres régionaux, du texte du message d’erreur, etc. à partir d’un fichier de ressources ou d’une DLL satellite.

IAxWinAmbientDispatch ::get_MessageReflect

La MessageReflect propriété ambiante spécifie si le conteneur reflète les messages au contrôle hébergé.

STDMETHOD(get_MessageReflect)(VARIANT_BOOL* pbMessageReflect);

Paramètres

pbMessageReflect
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_TRUE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::get_OptionKeyPath

La OptionKeyPath propriété spécifie le chemin d’accès de la clé de Registre aux paramètres utilisateur.

STDMETHOD(get_OptionKeyPath)(BSTR* pbstrOptionKeyPath);

Paramètres

pbstrOptionKeyPath
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

IAxWinAmbientDispatch ::get_ShowGrabHandles

La ShowGrabHandles propriété ambiante permet au contrôle de déterminer s’il doit se dessiner avec des poignées de saisie.

STDMETHOD(get_ShowGrabHandles)(VARIANT_BOOL* pbShowGrabHandles);

Paramètres

pbShowGrabHandles
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL retourne toujours VARIANT_FALSE comme valeur de cette propriété.

IAxWinAmbientDispatch ::get_ShowHatching

La ShowHatching propriété ambiante permet au contrôle de déterminer s’il doit se dessiner lui-même.

STDMETHOD(get_ShowHatching)(VARIANT_BOOL* pbShowHatching);

Paramètres

pbShowHatching
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL retourne toujours VARIANT_FALSE comme valeur de cette propriété.

IAxWinAmbientDispatch ::get_UserMode

La UserMode propriété spécifie le mode utilisateur ambiant du conteneur.

STDMETHOD(get_UserMode)(VARIANT_BOOL* pbUserMode);

Paramètres

pbUserMode
[out] Adresse d’une variable à recevoir la valeur actuelle de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_TRUE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_AllowContextMenu

La AllowContextMenu propriété spécifie si le contrôle hébergé est autorisé à afficher son propre menu contextuel.

STDMETHOD(put_AllowContextMenu)(VARIANT_BOOL bAllowContextMenu);

Paramètres

bAllowContextMenu
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_TRUE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_AllowShowUI

La AllowShowUI propriété spécifie si le contrôle hébergé est autorisé à afficher sa propre interface utilisateur.

STDMETHOD(put_AllowShowUI)(VARIANT_BOOL bAllowShowUI);

Paramètres

bAllowShowUI
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_FALSE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_AllowWindowlessActivation

La AllowWindowlessActivation propriété spécifie si le conteneur autorise l’activation sans fenêtre.

STDMETHOD(put_AllowWindowlessActivation)(VARIANT_BOOL bAllowWindowless);

Paramètres

bAllowWindowless
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_TRUE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_BackColor

La BackColor propriété spécifie la couleur d’arrière-plan ambiante du conteneur.

STDMETHOD(put_BackColor)(OLE_COLOR clrBackground);

Paramètres

clrBackground
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise COLOR_BTNFACE ou COLOR_WINDOW comme valeur par défaut de cette propriété (selon que le parent de la fenêtre hôte est un dialogue ou non).

IAxWinAmbientDispatch ::p ut_DisplayAsDefault

DisplayAsDefault est une propriété ambiante qui permet à un contrôle de déterminer s’il s’agit du contrôle par défaut.

STDMETHOD(put_DisplayAsDefault)(VARIANT_BOOL bDisplayAsDefault);

Paramètres

bDisplayAsDefault
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_FALSE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_DocHostDoubleClickFlags

La DocHostDoubleClickFlags propriété spécifie l’opération qui doit avoir lieu en réponse à un double-clic.

STDMETHOD(put_DocHostDoubleClickFlags)(DWORD dwDocHostDoubleClickFlags);

Paramètres

dwDocHostDoubleClickFlags
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise DOCHOSTUIDBLCLK_DEFAULT comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_DocHostFlags

La DocHostFlags propriété spécifie les fonctionnalités d’interface utilisateur de l’objet hôte.

STDMETHOD(put_DocHostFlags)(DWORD dwDocHostFlags);

Paramètres

dwDocHostFlags
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise DOCHOSTUIFLAG_NO3DBORDER comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_Font

La Font propriété spécifie la police ambiante du conteneur.

STDMETHOD(put_Font)(IFontDisp* pFont);

Paramètres

pFont
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise la police GUI par défaut ou la police système comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_ForeColor

La ForeColor propriété spécifie la couleur de premier plan ambiante du conteneur.

STDMETHOD(put_ForeColor)(OLE_COLOR clrForeground);

Paramètres

clrForeground
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise la couleur de texte de la fenêtre système comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_LocaleID

La LocaleID propriété spécifie l’ID des paramètres régionaux ambiants du conteneur.

STDMETHOD(put_LocaleID)(LCID lcidLocaleID);

Paramètres

lcidLocaleID
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise les paramètres régionaux par défaut de l’utilisateur comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_MessageReflect

La MessageReflect propriété ambiante spécifie si le conteneur reflète les messages au contrôle hébergé.

STDMETHOD(put_MessageReflect)(VARIANT_BOOL bMessageReflect);

Paramètres

bMessageReflect
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_TRUE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatch ::p ut_OptionKeyPath

La OptionKeyPath propriété spécifie le chemin d’accès de la clé de Registre aux paramètres utilisateur.

STDMETHOD(put_OptionKeyPath)(BSTR bstrOptionKeyPath);

Paramètres

bstrOptionKeyPath
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

IAxWinAmbientDispatch ::p ut_UserMode

La UserMode propriété spécifie le mode utilisateur ambiant du conteneur.

STDMETHOD(put_UserMode)(VARIANT_BOOL bUserMode);

Paramètres

bUserMode
[in] Nouvelle valeur de cette propriété.

Valeur de retour

Valeur HRESULT standard.

Notes

L’implémentation de l’objet hôte ATL utilise VARIANT_TRUE comme valeur par défaut de cette propriété.

IAxWinAmbientDispatchEx ::SetAmbientDispatch

Cette méthode est appelée pour compléter l’interface de propriété ambiante par défaut avec une interface définie par l’utilisateur.

virtual HRESULT STDMETHODCALLTYPE SetAmbientDispatch(IDispatch* pDispatch) = 0;

Paramètres

pDispatch
Pointeur vers la nouvelle interface.

Valeur de retour

Retourne S_OK sur la réussite ou une erreur HRESULT en cas d’échec.

Notes

Lorsqu’elle SetAmbientDispatch est appelée avec un pointeur vers une nouvelle interface, cette nouvelle interface est utilisée pour appeler toutes les propriétés ou méthodes demandées par le contrôle hébergé , si ces propriétés ne sont pas déjà fournies par IAxWinAmbientDispatch.

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 .

IAxWinHostWindowLic ::CreateControlLic

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

STDMETHOD(CreateControlLic)(
    LPCOLESTR lpTricsData,
    HWND hWnd,
    IStream* pStream,
    BSTR bstrLic);

Paramètres

bstrLic
[in] BSTR qui contient la clé de licence du contrôle.

Notes

Consultez IAxWinHostWindow ::CreateControl pour obtenir une description des paramètres restants et de la valeur de retour.

L’appel de cette méthode équivaut à appeler IAxWinHostWindowLic ::CreateControlLicEx

Exemple

Consultez l’hébergement de contrôles ActiveX à l’aide d’ATL AXHost pour un exemple qui utilise IAxWinHostWindowLic::CreateControlLic.

IAxWinHostWindowLic ::CreateControlLicEx

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

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

Paramètres

bstrLic
[in] BSTR qui contient la clé de licence du contrôle.

Notes

Consultez IAxWinHostWindow ::CreateControlEx pour obtenir une description des paramètres restants et de la valeur de retour.

Exemple

Consultez l’hébergement de contrôles ActiveX à l’aide d’ATL AXHost pour un exemple qui utilise IAxWinHostWindowLic::CreateControlLicEx.

Voir aussi

Vue d’ensemble de la classe