Форум: "Сети";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];
ВнизУтечка памяти и ресурсов (HTMLViewer) в W98 Найти похожие ветки
← →
Sir Alex © (2004-01-12 00:12) [0]Проверил свою программу и ужаснулся. Буквально за 5-10 обновлений в THTMLViewer в Win98 заканчиваются ресурсы (в часности GDI).
В THTMLViewer данные загружаются:
html.LoadFromBuffer(Pchar(tmpstr),length(tmpstr));
Примеры, которые шли в поставке с HTMLViewer 9.2, работают в W98 корректно, но они пользуются LoadFromFile... Вчем разница этих двух методов я не знаю, т.к. у меня нет исходников HTMLViewers.
На w2k, wXP, вроде работает нормально.
Если убрать вышеизложенный текст, то расход ресурсов исчезает, но естественно ничего не отоброжается...
Может что посоветуете?
← →
nikkie © (2004-01-12 01:32) [1]для начала неплохо бы прояснить, что такое HTMLViewer. если это просто обертыш над WebBrowser, то в статье Игоря Осовьяка сказано, где может возникать утечка памяти.
http://www.delphikingdom.ru/mastering/tweb.htm
← →
Sir Alex © (2004-01-12 14:32) [2]2 nikkie
Нет, это не обертка над IE. Это полноценный компонент, который отображает HTML.
Взять/посмотреть можно тут: http://www.pbear.com
← →
nikkie © (2004-01-12 16:49) [3]а... платная версия... может тогда тебе за поддержкой к производителю обратиться? ;)
ну либо посмотреть в htmlLite, чем отличаются эти два метода.
← →
savva © (2004-01-12 17:02) [4]а особождение памяти стоит после загрузки? потому как я использовал htmlLite передавал строку - вроде как не было замечено проблем..
← →
Sir Alex © (2004-01-12 17:41) [5]2 nikkie
дело в том, что я за нее не платил, НО, она для freeware проектов бесплатна. (т.е. для моей программы).
HTMLite не подходит тем, что не умеет печатать...
2 savva
Хм... а как ее после этого кода освободить?
tmpstr:string - обычная локальная переменная, которая преобразуется автоматом в PChar...
Может надо так?:
tmp:=strAlloc(length(tmpstr));
...
LoadFromBuffer
...
strDispose(tmp);
← →
nikkie © (2004-01-12 19:42) [6]>Может надо так?
не надо. как у тебя нормально. очевидно, что если утекают GDI ресурсы - твоя работа со строками тут не причем. что можно сказать? кривая компонента. варианты:
1. пиши автору
2. смотри как себя ведет htmlLite, если там такая же утечка, копайся в коде, а потом пиши автору - глядишь, исправит и может даже подарит лицензию
3. не используй LoadFromBuffer
4. не используй THtmlViewer
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.036 c