Problembeschreibung
Betrachten Sie das folgende Szenario:
-
Sie entwickeln eine Browser-Steuerelement Host oder ein ActiveX-Steuerelement.
-
Die Anwendung oder das ActiveX-Steuerelement referenziert das Enumerationsobjekt Auflistungsschnittstelle einer HTML-Seite. Um diese Funktion zu erstellen, finden Sie die folgenden Richtlinien:
-
In C++ ist der Enumerator Get__newEnum Funktion einer Auflistung Schnittstelle abgerufen. Ist ein Beispiel für eine Auflistungsschnittstelle IHTMLElementCollectionund diese abrufen, indem Sie IHTMLDocument2::get_allaufrufen.
-
In Visual Basic wird dieser Schritt im Hintergrund in einer Foreach-Konstrukt in einer Sammlung (z. B. die document.all) ausgeführt.
-
-
Ausführen die Anwendung auf einem Computer mit Internet Explorer 10 installiert.
In diesem Szenario tritt ein Speicherverlust.
Hinweis Da ActiveX-Steuerelemente mehr Speicher als systemeigenen HTML-Elemente verwenden, ist der Speicherverlust deutlicher, wenn eines der Elemente in der Auflistung ein ActiveX-Steuerelement ist.
Ein Speicherverlust tritt beispielsweise folgenden C++-Code in eine Funktion ein Webbrowser Control Host-Anwendung verwenden. In dieser Situation wird eine große Menge Speicher Verlust eines der Elemente auf der Webseite ein ActiveX-Steuerelement ist.
void CEnumLeakDlg::OnBnClicked(){
IDispatch* pDocDisp = m_web.get_Document();
IHTMLDocument2* pDoc = NULL;
HRESULT hr = pDocDisp->QueryInterface(IID_IHTMLDocument2, (void**)&pDoc);
IHTMLElementCollection* pElColl = NULL;
hr = pDoc->get_all(&pElColl);
IUnknown* pEnum = NULL;
hr = pElColl->get__newEnum(&pEnum);
pEnum->Release();
pElColl->Release();
pDoc->Release();
pDocDisp->Release();
}
Problemlösung
Installieren Sie zum Beheben dieses Problems das folgende Update:
2862772 MS13-059: Kumulatives Sicherheitsupdate für Internet Explorer: 13. August 2013
Weitere Informationen
Um weitere Informationen zur Terminologie für Softwareupdates zu erhalten, klicken Sie auf die folgende Artikelnummer, um den Artikel der Microsoft Knowledge Base anzuzeigen:
824684 Erläuterung von der standardmäßigen Standardbegriffen bei Microsoft Softwareupdates