Entwickler-Ecke
Windows API - Dynamisches Formular - Handles freigeben
Prodesse - Di 27.05.08 12:19
Titel: Dynamisches Formular - Handles freigeben
Hallo Comminity,
bin neu hier brauche aber dringend unterstützung.
In meinem Programm erzeuge ich mehrmals dasselbe Formulare dynamisch und gebe es wieder frei.
Erzeugen:
Delphi-Quelltext
1: 2: 3:
| Client[i] := TTestForm.Create(nil); Client[i].NUMMER.Caption := IntToStr(i); Client[i].Visible := true; |
Freigeben:
Delphi-Quelltext
1: 2:
| Client[i].Release; FreeAndNil(Client[i]); |
Trotzdem steigt die Anzahl der Handles im WindowsTaskmanager und das Programm wird immer
träger bis es ganz stoppt bei mehreren 1.000 Handles.
Kann mir jemand sagen was ich noch tun muß, damit die Handles alle wieder freigegeben werden?
Grüße und danke
Hendrik
Moderiert von
Narses: Delphi-Tags hinzugefügt
Martok - Di 27.05.08 12:37
Release
und FreeAndNil ist irgendwie sinnlos... du forderst das Fenster auf sich bei nächster Gelegenheit freizugeben und knallst es dann schon vorher weg...
Versuch mal nur
Delphi-Quelltext
1: 2:
| Client[i].Release; Client[i]:= nil; |
Ansonsten bestünde ja noch die Möglichkeit dass das Problem gar nicht da liegt...
Prodesse - Di 27.05.08 12:55
Danke für Deine Antwort,
aber das hilft auch nicht.
Kommentiere ich die Zeilen
Delphi-Quelltext
1: 2: 3:
| Client[i] := TTestForm.Create(nil); Client[i].NUMMER.Caption := IntToStr(i); Client[i].Visible := true; |
aus, bleibt die Anzahl der Handles konstant und der Rest des Programms arbeitet normal.
Könnte es an der TEmbeddedWB Kompnente liegen?
Grüße und danke
Hendrik
Moderiert von
AXMD: Delphi-Tags hinzugefügt
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!