Несколько IWebBrowser2 не освобождает память

У меня есть большой простой проект C ++, где я реализовал элемент управления веб-браузера (идея пришла от https://github.com/Tobbe).

Ну, я вводить какой-то внешний метод с AddCustomObject. Проблема в том, что мне нужно разместить большую страницу (1.9 КБ) со многими объектами (tinymce, jquery ecc) для локального редактирования … память увеличивается каждый раз, когда я открываю страницу.

Я искал, гуглил, читал, связался с оригинальным разработчиком … Нет.

В методе close код такой:

      if (ibrowser != 0) {
IConnectionPointContainer *cpc = 0;
ibrowser->QueryInterface(IID_IConnectionPointContainer, (void**)&cpc);

if (cpc != 0) {
IConnectionPoint *cp = 0;
cpc->FindConnectionPoint(DIID_DWebBrowserEvents2, &cp);

if (cp != 0) {
cp->Unadvise(cookie);
cp->Release();
}

cpc->Release();
}

IOleObject *iole = 0;
ibrowser->QueryInterface(IID_IOleObject, (void**)&iole);

/*ibrowser->Stop();
ibrowser->ExecWB(OLECMDID_CLOSE, OLECMDEXECOPT_DONTPROMPTUSER, 0, 0);
ibrowser->put_Visible(VARIANT_FALSE);*/
UINT refCount = ibrowser->Release();
ibrowser = 0;if (iole != 0) {
iole->Close(OLECLOSE_NOSAVE);
iole->Release();
}
}

Отладка в Vs2008 Я видел много CustomObject :: AddRef и Release, возможно, из-за setTimeout

Я не знаю, как решить эту проблему … нужна помощь!

Спасибо!

Andrea

0

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]