Я унаследовал ужасный код синтаксического анализа MSXML (который, к сожалению, у меня нет времени переписывать). Этот код полон утечек COM-интерфейса / BSTR, где оригинальные авторы либо неправильно использовали ручной подсчет ссылок COM (который всегда, кажется, заканчивается слезами), либо где они использовали интеллектуальные указатели COM, но использовали их неправильно, так что утечки произошли.
Я исправил многие утечки в коде, но все еще обнаруживаю, что msxml3.dll не выгружается, когда я вызываю CoUninitialize () (что должно быть, если все интерфейсы пропали) и используется больше памяти чем я ожидаю после запуска этого кода.
Сейчас я достигаю предела того, что могу определить вручную, и ищу решение для отладки, которое может идентифицировать подобные утечки. В прошлом я использовал umdh с хорошим эффектом для обнаружения обычных утечек, но это не кажется очень полезным с утечками COM. Кто-нибудь может порекомендовать хороший подход?
Leaks
участвует вBasic
тестах. - person Mahesh   schedule 17.08.2012