BHO утечка памяти - PullRequest
       20

BHO утечка памяти

2 голосов
/ 14 июля 2010

Я написал BHO на основе этого урока: http://www.codeproject.com/KB/cs/Attach_BHO_with_C_.aspx

Мои GetSite и SetSite идентичны списку учебных пособий. Я добавляю / удаляю обработчик OnDocumentComplete и назначаю SHDocVW.WebBrowser webBrowser внутри функции IObjectWithSite SetSite

для целей отладки я удалил все, кроме основных функций. Вот мой обработчик OnDocumentComplete.

    public void OnDocumentComplete(object pDisp, ref object URL)
    {
        if (true)
        {

            HTMLDocument document;
            document = (HTMLDocument)webBrowser.Document;
            /*need to do some stuff here to the doc*/
            //then free up script references somehow?
        }
        return;
    }

Когда я присоединяю мой отладчик VS2008 к экземпляру IE, я замечаю, что все загруженные .js остаются после того, как их соответствующие окна / вкладки закрыты. Если я устанавливаю условие в OnDocumentComplete в false (или отключаю мой BHO), утечка исчезает. Нужно ли выполнять дополнительную очистку mshtml.HTMLDocument? Спасибо!

1 Ответ

3 голосов
/ 14 июля 2010
...