![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
При уничтожении формы с WebBrowser вылетает куча консолей ! [D7, Win2k]
vi7777 © (2003-04-11 12:18:00)Сама программа представляет из себя сабмитер. Т.е. есть главная форма и из неё создаются формы(в данном случае автосабмит).
На форме TWebBrowser. При создании формы в WB открывается страничка, после загрузки заполняются поля, нажимается кнопка Submit, затем получаем ответ, сохраняем в файл результат сабмита и закрываем форму, т.е. уничтожаем. Затем создается новая и т.д.
Так вот если сразу после оздания формы ее закрыть или оборвется соединение с интернетом, то будут вылетать окна эксплорера с урлом сабмит странички пока не закроешь саму программу или пока комп не повиснет ) Что это может быть подскажите, плиииз )
и что интересно, если nil, то не вылетают окна, но сильно съедается память(после 400 - 500 сабмитов прога в памяти весит 50 - 60 Мб), а если caFree, то вылетают, но память освобождается ! Помогите пожалуйста !! :-)
Ihor Osov'yak (2003-04-15 13:25:00) [1]Вариант второй вероятно отпадает - тогда бЫ страничка запускалась бы в твоем броузере, а не внешнем
Ihor Osov'yak (2003-04-15 13:24:00) [2]
Вероятнее всего, что на страничке есть скрипты, открывающие новые IE при закрытии странички - типичное поведение всяких xxx ресурсов. Посмотри html код. Или проверь на IE. Хотя тут может быть ньюанс - страничка может контролировать, что она запущена не под полным IE и делать козни. Если под полным - ничего не делать. То есть изучи html код
Если это так - то наиболее простое решение -
procedure TFormMain_XXX.WBNewWindow2(Sender: TObject;
var ppDisp: IDispatch; var Cancel: WordBool);
begin
Cancel := true;
end.
Вариант втоорой - у тебя чего-то напутано с логикой программы и ты кликаешь
слишком много на соотв. кнопочке.
Да, не делай програмных кликов по кнопочке - сразу вызывай обработчик.. Но
это уже имхо