Sümptomid

Kujutage ette järgmist stsenaariumi.

  • Teil tekivad web browser kontrolli põhirakendus või ActiveX-juhtelementi.

  • Taotluse või ActiveX-juhtelemendi viited loendur objekti kogumine Interface HTML-lehele. Selle funktsiooni loomiseks vt järgmisi suuniseid:

    • C++, saadakse loendur kogumise liidesget__newEnum funktsiooni.  Näiteks kogumise liides on IHTMLElementCollectionjaja see on tavaliselt saadud helistades IHTMLDocument2::get_all.

    • Visual Basicu selles etapis toimub foreach tarindit taustal üle kogumik (nt document.all kogumine).

  • Rakenduse käivitada arvutis, kuhu on installitud Internet Explorer 10.

Selle stsenaariumi korral ilmneb mäluleke.

Märkus. Kuna ActiveX-juhtelemendid tarbida rohkem mälu kui native HTML elemendid, mälu leke on selge, kui elementi kogumine on ActiveX-juhtelement.

Näiteks mälulekke ilmneb C++ koodi kasutamisel funktsiooni web browser kontrolli põhirakendus. Selles olukorras on suurel hulgal mälu lekkinud kui üks elemente veebilehel on ActiveX-juhtelement.
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();
}

Lahendus

Selle probleemi lahendamiseks installige järgmine värskendus:

2862772 MS13-059: Internet Exploreri seniste koondturvavärskenduste: 13 August 2013

Lisateabe saamiseks

Tarkvaravärskenduste terminoloogia kohta lisateabe saamiseks avage Microsofti teabebaasi (Knowledge Base) artikkel, klõpsates järgmist artiklinumbrit:

824684 Microsofti tarkvaravärskenduste iseloomustamiseks kasutatavate standardterminite kirjeldus

Kas vajate veel abi?

Täiendage oma oskusi
Tutvuge koolitusmaterjalidega
Kasutage uusi funktsioone enne teisi
Liitu Microsofti Insideri programmis osalejad

Kas sellest teabest oli abi?

Kui rahul te tõlkekvaliteediga olete?
Mis mõjutas teie kasutuskogemust?

Täname tagasiside eest!

×