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
.