IAtlMemMgr-Klasse
Diese Klasse stellt die Schnittstelle zu einem Speicher-Manager dar.
Syntax
__interface __declspec(uuid("654F7EF5-CFDF-4df9-A450-6C6A13C622C0")) IAtlMemMgr
Member
Methoden
Name | Beschreibung |
---|---|
Zuteilen | Rufen Sie diese Methode auf, um einen Speicherblock zu belegen. |
Free | Rufen Sie diese Methode auf, um einen Speicherblock freizugeben. |
GetSize | Rufen Sie diese Methode auf, um die Größe eines zugeordneten Speicherblocks abzurufen. |
Neu zuteilen | Rufen Sie diese Methode auf, um einen Speicherblock neu zu verlagern. |
Hinweise
Diese Schnittstelle wird von CComHeap, CCRTHeap, CLocalHeap, CGlobalHeap oder CWin32Heap implementiert.
Hinweis
Die lokalen und globalen Heap-Funktionen sind langsamer als andere Speicherverwaltungsfunktionen und bieten nicht so viele Features. Daher sollten neue Anwendungen die Heap-Funktionen verwenden. Diese sind in der CWin32Heap-Klasse verfügbar.
Beispiel
// 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;
}
Anforderungen
Kopfzeile: atlmem.h
IAtlMemMgr::Allocate
Rufen Sie diese Methode auf, um einen Speicherblock zu belegen.
void* Allocate(size_t nBytes) throw();
Parameter
nBytes
Die angeforderte Anzahl von Bytes im neuen Speicherblock.
Rückgabewert
Gibt einen Zeiger auf den Anfang des neu belegten Speicherblocks zurück.
Hinweise
Rufen Sie IAtlMemMgr::Free oder IAtlMemMgr::Reallocate auf, um den von dieser Methode zugewiesenen Speicher freizugeben.
Beispiel
Ein Beispiel finden Sie unter " IAtlMemMgr Overview".
IAtlMemMgr::Free
Rufen Sie diese Methode auf, um einen Speicherblock freizugeben.
void Free(void* p) throw();
Parameter
p
Ein Zeiger auf den Arbeitsspeicher, der zuvor von diesem Speicher-Manager zugeordnet wurde.
Hinweise
Verwenden Sie diese Methode, um Speicher freizugeben, der von IAtlMemMgr::Allocate or IAtlMemMgr::Reallocate abgerufen wird.
Beispiel
Ein Beispiel finden Sie unter " IAtlMemMgr Overview".
IAtlMemMgr::GetSize
Rufen Sie diese Methode auf, um die Größe eines zugeordneten Speicherblocks abzurufen.
size_t GetSize(void* p) throw();
Parameter
p
Ein Zeiger auf den Arbeitsspeicher, der zuvor von diesem Speicher-Manager zugeordnet wurde.
Rückgabewert
Gibt die Größe des Speicherblocks in Bytes zurück.
Beispiel
Ein Beispiel finden Sie unter " IAtlMemMgr Overview".
IAtlMemMgr::Reallocate
Rufen Sie diese Methode auf, um den von diesem Speicher-Manager zugeordneten Arbeitsspeicher neu zuzuordnen.
void* Reallocate(void* p, size_t nBytes) throw();
Parameter
p
Ein Zeiger auf den Arbeitsspeicher, der zuvor von diesem Speicher-Manager zugeordnet wurde.
nBytes
Die angeforderte Anzahl von Bytes im neuen Speicherblock.
Rückgabewert
Gibt einen Zeiger auf den Anfang des neu belegten Speicherblocks zurück.
Hinweise
Rufen Sie IAtlMemMgr::Free oder IAtlMemMgr::Reallocate auf, um den von dieser Methode zugewiesenen Speicher freizugeben.
Konzeptionell gibt diese Methode den vorhandenen Speicher frei und weist einen neuen Speicherblock zu. Tatsächlich kann der vorhandene Speicher erweitert oder anderweitig wiederverwendet werden.
Beispiel
Ein Beispiel finden Sie unter " IAtlMemMgr Overview".
IAxWinAmbientDispatch::get_AllowContextMenu
Die AllowContextMenu
Eigenschaft gibt an, ob das gehostete Steuerelement sein eigenes Kontextmenü anzeigen darf.
STDMETHOD(get_AllowContextMenu)(VARIANT_BOOL* pbAllowContextMenu);
Parameter
pbAllowContextMenu
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_TRUE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::get_AllowShowUI
Die AllowShowUI
Eigenschaft gibt an, ob das gehostete Steuerelement seine eigene Benutzeroberfläche anzeigen darf.
STDMETHOD(get_AllowShowUI)(VARIANT_BOOL* pbAllowShowUI);
Parameter
pbAllowShowUI
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_FALSE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::get_AllowWindowlessActivation
Die AllowWindowlessActivation
Eigenschaft gibt an, ob der Container eine fensterlose Aktivierung zulässt.
STDMETHOD(get_AllowWindowlessActivation)(VARIANT_BOOL* pbAllowWindowless);
Parameter
pbAllowWindowless
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_TRUE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::get_BackColor
Die BackColor
Eigenschaft gibt die Umgebungshintergrundfarbe des Containers an.
STDMETHOD(get_BackColor)(OLE_COLOR* pclrBackground);
Parameter
pclrBackground
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet COLOR_BTNFACE oder COLOR_WINDOW als Standardwert dieser Eigenschaft (je nachdem, ob das übergeordnete Element des Hostfensters ein Dialogfeld ist oder nicht).
IAxWinAmbientDispatch::get_DisplayAsDefault
DisplayAsDefault
ist eine Umgebungseigenschaft, mit der ein Steuerelement herausfinden kann, ob es sich um das Standardsteuerelement handelt.
STDMETHOD(get_DisplayAsDefault)(VARIANT_BOOL* pbDisplayAsDefault);
Parameter
pbDisplayAsDefault
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_FALSE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::get_DocHostDoubleClickFlags
Die DocHostDoubleClickFlags
Eigenschaft gibt den Vorgang an, der als Reaktion auf einen Doppelklick ausgeführt werden soll.
STDMETHOD(get_DocHostDoubleClickFlags)(DWORD* pdwDocHostDoubleClickFlags);
Parameter
pdwDocHostDoubleClickFlags
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet DOCHOSTUIDBLCLK_DEFAULT als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::get_DocHostFlags
Die DocHostFlags
Eigenschaft gibt die Benutzeroberflächenfunktionen des Hostobjekts an.
STDMETHOD(get_DocHostFlags)(DWORD* pdwDocHostFlags);
Parameter
pdwDocHostFlags
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet DOCHOSTUIFLAG_NO3DBORDER als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::get_Font
Die Font
Eigenschaft gibt die Umgebungsschriftart des Containers an.
STDMETHOD(get_Font)(IFontDisp** pFont);
Parameter
pFont
[out] Die Adresse eines IFontDisp
Schnittstellenzeigers, der zum Empfangen des aktuellen Werts dieser Eigenschaft verwendet wird.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet die Standard-GUI-Schriftart oder die Systemschriftart als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::get_ForeColor
Die ForeColor
Eigenschaft gibt die Umgebungs-Vordergrundfarbe des Containers an.
STDMETHOD(get_ForeColor)(OLE_COLOR* pclrForeground);
Parameter
pclrForeground
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet die Textfarbe des Systemfensters als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::get_LocaleID
Die LocaleID
Eigenschaft gibt die Umgebungsgebietsschema-ID des Containers an.
STDMETHOD(get_LocaleID)(LCID* plcidLocaleID);
Parameter
plcidLocaleID
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet das Standardgebietsschema des Benutzers als Standardwert dieser Eigenschaft.
Mit dieser Methode können Sie die Ambient LocalID ermitteln, d. h. die LocaleID des Programms, in dem Ihr Steuerelement verwendet wird. Sobald Sie die LocaleID kennen, können Sie Code aufrufen, um gebietsschemaspezifische Beschriftungen, Fehlermeldungstext usw. aus einer Ressourcendatei oder Satelliten-DLL zu laden.
IAxWinAmbientDispatch::get_MessageReflect
Die MessageReflect
Umgebungseigenschaft gibt an, ob der Container Nachrichten an das gehostete Steuerelement widerspiegelt.
STDMETHOD(get_MessageReflect)(VARIANT_BOOL* pbMessageReflect);
Parameter
pbMessageReflect
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_TRUE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::get_OptionKeyPath
Die OptionKeyPath
Eigenschaft gibt den Registrierungsschlüsselpfad zu Den Benutzereinstellungen an.
STDMETHOD(get_OptionKeyPath)(BSTR* pbstrOptionKeyPath);
Parameter
pbstrOptionKeyPath
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
IAxWinAmbientDispatch::get_ShowGrabHandles
Mit ShowGrabHandles
der Umgebungseigenschaft kann das Steuerelement herausfinden, ob es sich selbst mit Ziehpunkten zeichnen soll.
STDMETHOD(get_ShowGrabHandles)(VARIANT_BOOL* pbShowGrabHandles);
Parameter
pbShowGrabHandles
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung gibt immer VARIANT_FALSE als Wert dieser Eigenschaft zurück.
IAxWinAmbientDispatch::get_ShowHatching
Die ShowHatching
Umgebungseigenschaft ermöglicht es dem Steuerelement herauszufinden, ob es sich selbst geschlüpft zeichnen soll.
STDMETHOD(get_ShowHatching)(VARIANT_BOOL* pbShowHatching);
Parameter
pbShowHatching
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung gibt immer VARIANT_FALSE als Wert dieser Eigenschaft zurück.
IAxWinAmbientDispatch::get_UserMode
Die UserMode
Eigenschaft gibt den Umgebungsbenutzermodus des Containers an.
STDMETHOD(get_UserMode)(VARIANT_BOOL* pbUserMode);
Parameter
pbUserMode
[out] Die Adresse einer Variablen, die den aktuellen Wert dieser Eigenschaft empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_TRUE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_AllowContextMenu
Die AllowContextMenu
Eigenschaft gibt an, ob das gehostete Steuerelement sein eigenes Kontextmenü anzeigen darf.
STDMETHOD(put_AllowContextMenu)(VARIANT_BOOL bAllowContextMenu);
Parameter
bAllowContextMenu
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_TRUE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_AllowShowUI
Die AllowShowUI
Eigenschaft gibt an, ob das gehostete Steuerelement seine eigene Benutzeroberfläche anzeigen darf.
STDMETHOD(put_AllowShowUI)(VARIANT_BOOL bAllowShowUI);
Parameter
bAllowShowUI
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_FALSE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_AllowWindowlessActivation
Die AllowWindowlessActivation
Eigenschaft gibt an, ob der Container eine fensterlose Aktivierung zulässt.
STDMETHOD(put_AllowWindowlessActivation)(VARIANT_BOOL bAllowWindowless);
Parameter
bAllowWindowless
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_TRUE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_BackColor
Die BackColor
Eigenschaft gibt die Umgebungshintergrundfarbe des Containers an.
STDMETHOD(put_BackColor)(OLE_COLOR clrBackground);
Parameter
clrBackground
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet COLOR_BTNFACE oder COLOR_WINDOW als Standardwert dieser Eigenschaft (je nachdem, ob das übergeordnete Element des Hostfensters ein Dialogfeld ist oder nicht).
IAxWinAmbientDispatch::p ut_DisplayAsDefault
DisplayAsDefault
ist eine Umgebungseigenschaft, mit der ein Steuerelement herausfinden kann, ob es sich um das Standardsteuerelement handelt.
STDMETHOD(put_DisplayAsDefault)(VARIANT_BOOL bDisplayAsDefault);
Parameter
bDisplayAsDefault
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_FALSE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_DocHostDoubleClickFlags
Die DocHostDoubleClickFlags
Eigenschaft gibt den Vorgang an, der als Reaktion auf einen Doppelklick ausgeführt werden soll.
STDMETHOD(put_DocHostDoubleClickFlags)(DWORD dwDocHostDoubleClickFlags);
Parameter
dwDocHostDoubleClickFlags
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet DOCHOSTUIDBLCLK_DEFAULT als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_DocHostFlags
Die DocHostFlags
Eigenschaft gibt die Benutzeroberflächenfunktionen des Hostobjekts an.
STDMETHOD(put_DocHostFlags)(DWORD dwDocHostFlags);
Parameter
dwDocHostFlags
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet DOCHOSTUIFLAG_NO3DBORDER als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_Font
Die Font
Eigenschaft gibt die Umgebungsschriftart des Containers an.
STDMETHOD(put_Font)(IFontDisp* pFont);
Parameter
pFont
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet die Standard-GUI-Schriftart oder die Systemschriftart als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_ForeColor
Die ForeColor
Eigenschaft gibt die Umgebungs-Vordergrundfarbe des Containers an.
STDMETHOD(put_ForeColor)(OLE_COLOR clrForeground);
Parameter
clrForeground
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet die Textfarbe des Systemfensters als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_LocaleID
Die LocaleID
Eigenschaft gibt die Umgebungsgebietsschema-ID des Containers an.
STDMETHOD(put_LocaleID)(LCID lcidLocaleID);
Parameter
lcidLocaleID
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet das Standardgebietsschema des Benutzers als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_MessageReflect
Die MessageReflect
Umgebungseigenschaft gibt an, ob der Container Nachrichten an das gehostete Steuerelement widerspiegelt.
STDMETHOD(put_MessageReflect)(VARIANT_BOOL bMessageReflect);
Parameter
bMessageReflect
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_TRUE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatch::p ut_OptionKeyPath
Die OptionKeyPath
Eigenschaft gibt den Registrierungsschlüsselpfad zu Den Benutzereinstellungen an.
STDMETHOD(put_OptionKeyPath)(BSTR bstrOptionKeyPath);
Parameter
bstrOptionKeyPath
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
IAxWinAmbientDispatch::p ut_UserMode
Die UserMode
Eigenschaft gibt den Umgebungsbenutzermodus des Containers an.
STDMETHOD(put_UserMode)(VARIANT_BOOL bUserMode);
Parameter
bUserMode
[in] Der neue Wert dieser Eigenschaft.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die ATL-Hostobjektimplementierung verwendet VARIANT_TRUE als Standardwert dieser Eigenschaft.
IAxWinAmbientDispatchEx::SetAmbientDispatch
Diese Methode wird aufgerufen, um die Standardumgebungseigenschaftsschnittstelle mit einer benutzerdefinierten Schnittstelle zu ergänzen.
virtual HRESULT STDMETHODCALLTYPE SetAmbientDispatch(IDispatch* pDispatch) = 0;
Parameter
pDispatch
Zeiger auf die neue Schnittstelle.
Rückgabewert
S_OK bei Erfolg, ein HRESULT-Fehler bei einem Fehlschlag.
Hinweise
Wird SetAmbientDispatch
diese neue Schnittstelle mit einem Zeiger auf eine neue Schnittstelle aufgerufen, wird diese neue Schnittstelle verwendet, um alle Eigenschaften oder Methoden aufzurufen, die vom gehosteten Steuerelement angefordert werden– wenn diese Eigenschaften nicht bereits von IAxWinAmbientDispatch bereitgestellt werden.
IAxWinHostWindow::AttachControl
Fügt ein vorhandenes (und zuvor initialisiertes) Steuerelement mithilfe des durch hWnd identifizierten Fensters an das Hostobjekt an.
STDMETHOD(AttachControl)(IUnknown* pUnkControl, HWND hWnd);
Parameter
pUnkControl
[in] Ein Zeiger auf die IUnknown
Schnittstelle des Steuerelements, das an das Hostobjekt angefügt werden soll.
hWnd
[in] Ein Handle für das Fenster, das für das Hosting verwendet werden soll.
Rückgabewert
Ein HRESULT-Standardwert.
IAxWinHostWindow::CreateControl
Erstellt ein Steuerelement, initialisiert es und hostet es im fenster, das von hWnd identifiziert wird.
STDMETHOD(CreateControl)(
LPCOLESTR lpTricsData,
HWND hWnd,
IStream* pStream);
Parameter
lpTricsData
[in] Eine Zeichenfolge, die das zu erstellende Steuerelement identifiziert. Kann eine CLSID (muss die geschweiften Klammern enthalten), ProgID, URL oder unformatierte HTML (präfixt durch MSHTML:).
hWnd
[in] Ein Handle für das Fenster, das für das Hosting verwendet werden soll.
pStream
[in] Ein Schnittstellenzeiger für einen Datenstrom, der Initialisierungsdaten für das Steuerelement enthält. Kann den Wert NULL haben.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Dieses Fenster wird von dem Hostobjekt unterklassigt, das diese Schnittstelle verfügbar gibt, sodass Nachrichten an das Steuerelement widergespiegelt werden können und andere Containerfeatures funktionieren.
Das Aufrufen dieser Methode entspricht dem Aufrufen von IAxWinHostWindow::CreateControlEx.
Informationen zum Erstellen eines lizenzierten ActiveX-Steuerelements finden Sie unter "IAxWinHostWindowLic::CreateControlLic".
IAxWinHostWindow::CreateControlEx
Erstellt ein ActiveX-Steuerelement, initialisiert es und hostet es im angegebenen Fenster, ähnlich wie IAxWinHostWindow::CreateControl.
STDMETHOD(CreateControlEx)(
LPCOLESTR lpszTricsData,
HWND hWnd,
IStream* pStream,
IUnknown** ppUnk,
REFIID riidAdvise,
IUnknown* punkAdvise);
Parameter
lpTricsData
[in] Eine Zeichenfolge, die das zu erstellende Steuerelement identifiziert. Kann eine CLSID (muss die geschweiften Klammern enthalten), ProgID, URL oder unformatierte HTML (präfixt mit MSHTML:).
hWnd
[in] Ein Handle für das Fenster, das für das Hosting verwendet werden soll.
pStream
[in] Ein Schnittstellenzeiger für einen Datenstrom, der Initialisierungsdaten für das Steuerelement enthält. Kann den Wert NULL haben.
ppUnk
[out] Die Adresse eines Zeigers, der die IUnknown
Schnittstelle des erstellten Steuerelements empfängt. Kann den Wert NULL haben.
riidAdvise
[in] Der Schnittstellenbezeichner einer ausgehenden Schnittstelle für das enthaltene Objekt. Kann IID_NULL werden.
punkAdvise
[in] Ein Zeiger auf die IUnknown
Schnittstelle des Sinkobjekts, das mit dem Verbindungspunkt des enthaltenen Objekts iidSink
verbunden werden soll.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
CreateControl
Im Gegensatz zur Methode können Sie auch einen Schnittstellenzeiger auf das neu erstellte Steuerelement empfangen und eine Ereignissenke einrichten, um Ereignisse zu empfangen, CreateControlEx
die vom Steuerelement ausgelöst werden.
Informationen zum Erstellen eines lizenzierten ActiveX-Steuerelements finden Sie unter "IAxWinHostWindowLicLic::CreateControlLicEx".
IAxWinHostWindow::QueryControl
Gibt den angegebenen Schnittstellenzeiger zurück, der vom gehosteten Steuerelement bereitgestellt wird.
STDMETHOD(QueryControl)(REFIID riid, void** ppvObject);
Parameter
riid
[in] Die ID einer Schnittstelle für das angeforderte Steuerelement.
ppvObject
[out] Die Adresse eines Zeigers, der die angegebene Schnittstelle des erstellten Steuerelements empfängt.
Rückgabewert
Ein HRESULT-Standardwert.
IAxWinHostWindow::SetExternalDispatch
Legt die externe dispinterface fest, die für enthaltene Steuerelemente über die IDocHostUIHandlerDispatch::GetExternal-Methode verfügbar ist.
STDMETHOD(SetExternalDispatch)(IDispatch* pDisp);
Parameter
pDisp
[in] Ein Zeiger auf eine IDispatch
Schnittstelle.
Rückgabewert
Ein HRESULT-Standardwert.
IAxWinHostWindow::SetExternalUIHandler
Rufen Sie diese Funktion auf, um die externe IDocHostUIHandlerDispatch-Schnittstelle für das CAxWindow
Objekt festzulegen.
STDMETHOD(SetExternalUIHandler)(IDocHostUIHandlerDispatch* pDisp);
Parameter
pDisp
[in] Ein Zeiger auf eine IDocHostUIHandlerDispatch
Schnittstelle.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Diese Funktion wird von Steuerelementen (z. B. dem Webbrowser-Steuerelement) verwendet, die die Website des Hosts für die IDocHostUIHandlerDispatch
Schnittstelle abfragen.
IAxWinHostWindowLic::CreateControlLic
Erstellt ein lizenziertes Steuerelement, initialisiert es und hostet es im durch hWnd
.
STDMETHOD(CreateControlLic)(
LPCOLESTR lpTricsData,
HWND hWnd,
IStream* pStream,
BSTR bstrLic);
Parameter
bstrLic
[in] Der BSTR, der den Lizenzschlüssel für das Steuerelement enthält.
Hinweise
Eine Beschreibung der verbleibenden Parameter und des Rückgabewerts finden Sie unter "IAxWinHostWindow::CreateControl ".
Das Aufrufen dieser Methode entspricht dem Aufrufen von IAxWinHostWindowLic::CreateControlLicEx
Beispiel
Ein Beispiel, das verwendet, IAxWinHostWindowLic::CreateControlLic
finden Sie unter Hosten von ActiveX-Steuerelementen mit ATL AXHost.
IAxWinHostWindowLic::CreateControlLicEx
Erstellt ein lizenziertes ActiveX-Steuerelement, initialisiert es und hostet es im angegebenen Fenster, ähnlich wie IAxWinHostWindow::CreateControl.
STDMETHOD(CreateControlLicEx)(
LPCOLESTR lpszTricsData,
HWND hWnd,
IStream* pStream,
IUnknown** ppUnk,
REFIID riidAdvise,
IUnknown* punkAdvise,
BSTR bstrLic);
Parameter
bstrLic
[in] Der BSTR, der den Lizenzschlüssel für das Steuerelement enthält.
Hinweise
Eine Beschreibung der verbleibenden Parameter und des Rückgabewerts finden Sie unter "IAxWinHostWindow::CreateControlEx" .
Beispiel
Ein Beispiel, das verwendet, IAxWinHostWindowLic::CreateControlLicEx
finden Sie unter Hosten von ActiveX-Steuerelementen mit ATL AXHost.