Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

증상

다음 시나리오를 고려하십시오.

  • 웹 브라우저 컨트롤 호스트 응용 프로그램 또는 ActiveX 컨트롤을 개발 합니다.

  • 응용 프로그램이 나 ActiveX 컨트롤은 HTML 페이지의 컬렉션 인터페이스에서 열거자 개체를 참조합니다. 이 기능을 만들려면 다음 지침을 참조 하십시오.

    • C + +에서는 컬렉션 인터페이스의 get__newEnum 함수를 호출 하 여 열거자를 가져옵니다.  컬렉션 인터페이스의 예로 IHTMLElementCollection이며이 일반적으로 IHTMLDocument2::get_all를 호출 하 여 가져옵니다.

    • Visual Basic 컬렉션 (예: document.all 컬렉션)이 이렇게 foreach 구문에서 수행 합니다.

  • Internet Explorer 10이 설치 되어 있는 컴퓨터에서 응용 프로그램을 실행 합니다.

이 시나리오에서는 메모리 누수가 발생합니다.

참고: ActiveX 컨트롤이 원시 HTML 요소 보다 더 많은 메모리를 소모 하기 때문에 메모리 누수는 컬렉션에 있는 요소 중 하나는 ActiveX 컨트롤 보다 명확해.

예를 들어, 다음 c + + 코드를 사용 하 여 웹 브라우저 컨트롤 호스트 응용 프로그램의 함수에서 메모리 누수가 발생 합니다. 이 경우 많은 양의 메모리 누수 경우 ActiveX 컨트롤은 웹 페이지의 요소 중 하나.
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();
}

해결 방법

이 문제를 해결 하려면 다음 업데이트를 설치 합니다.

2862772 MS13-059: Internet Explorer 용 누적 보안 업데이트: 2013 년 8 월 13,

자세한 내용

소프트웨어 업데이트 용어에 대한 자세한 내용을 보려면, 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 확인하십시오.

Microsoft 소프트웨어 업데이트를 설명 하는 데 사용 되는 표준 용어에 대 한 824684 설명

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×