Это проблема именно эксплорера.
Восьмой в этом отношении работает лучше, но и его иногда переглючивает и он начинает есть память и тормозить.
Как создавать/убивать WebBrowser:
Код:
type
TForm1 = class(TForm)
...
private
WB : TWebBrowser;
WBUseCount : Integer;
procedure RecreateWB(Kill : Boolean = False);
end;
procedure TForm1.FromCreate(Sender : TObject);
begin
// начальное создание браузера
// во время дизайна его нету...
RecreateWB;
WBUseCount := 0;
end;
procedure TForm1.RecreateWB(Kill : Boolean = False);
begin
If Kill Then WB.Free;
WB := TWebBrowser.Create(Self);
WB.Parent := Self; // Родитель - форма, панель...
WB.Align := alClient; // Если нвдо по координатам, то ставим координаты.
end;
procedure TForm1.Button1Click(Sender : TObject);
begin
If WBUseCount > 50
Then RecteateWB; // пересоздаем каждые 50 обращений
// далее код обращения к WB, типа WB.Navigate()
...
end;