Einzelnen Beitrag anzeigen

Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#36

Re: Datei bearbeiten und nur Teile wieder speichern

  Alt 5. Mär 2008, 11:01
Zitat von marabu:
Wenn du größere Dokumente geladen hast, dann belegt das aufgebaute DOM natürlich reichlich Speicher. Sobald du ein neues Dokument lädst, wird dieser Speicher aber automatisch wieder freigegeben. Du selbst kannst das mit WebBrowser.Navigate('about:blank') veranlassen.

Von dir verwendete Automationsobjekte (COM) werden automatisch freigegeben, sobald sie nicht mehr verwendet werden. Du kannst die vorzeitige Freigabe erzwingen, indem du sie einfach auf NIL setzt. Free() dient der Freigabe von Delphi-Objekten.
Theoretisch ja, praktisch hat die Implementierung im IE bezüglich Interfaces viele Fehler so das man hier (durch eigene Tests herausfinden welche) an diversen Stellen vor dem setzen auf nil einfach mal ein _Release einfügen muss um um das Problem zu löse. Jedoch schön alles mit try...except absichern da z.B. der IE 7 hier weniger Fehler hat als z.B. der IE 6 und man sonst bei einem Update das hier Fehler behebt sonst probleme bekommt.

Ich vermute mal das IE-Intern Objekte gegenseitig Interface-Zeiger halten so das hier eine "Deadlock"-Situation (ich glaube es gibt auch einen gebräuchlicheren Begriff) vorliegt.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat