Entwickler-Ecke

Internet / Netzwerk - serversocket bei beendigung freigeben, wie


torstenheinze - So 09.03.03 22:34
Titel: serversocket bei beendigung freigeben, wie
wie muss ich serversocket bei beendigung des progs freigeben?

serversocket1.free;
serversocket1.close;
serversocket1.active := false;


:?: :?: :?: :? :?: :?: :?:


DeCodeGuru - So 09.03.03 22:40

versuchs mal so:


Quelltext
1:
2:
3:
4:
5:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  serversocket1.close;
  serversocket1.free;
end;


Free gibt ein Objekt frei. Danach kannste nicht mehr auf das Objekt zugreifen -> nichts ist mit close.

Achja, serversocket1.close setzt Active auf False;


torstenheinze - So 09.03.03 22:42

ok, danke


ich hab ja nur einige varianten hingeschrieben, nicht in der richtigen reinfolge, das waren ja nur die wo ich dachte das sie sowas in der richtung bewirken könnten


torstenheinze - So 09.03.03 22:43

kann ich das auch bei form1.destroy reinschreiben?


DeCodeGuru - So 09.03.03 22:44

Kannste auch machen. Such einfach mal in der Hilfe nach den Ereignissen. Dann weisst du, wann die Ereignisse auftreten.


torstenheinze - So 09.03.03 22:46

ich weiß wann destroy auftritt, doch es hätte ja sein können, das wenn ich es da mache irgendwelche komplicationen kommen, man weiß ja nie... :wink:


DeCodeGuru - So 09.03.03 22:47

probier es aus. :wink:


torstenheinze - So 09.03.03 22:50

jup


DaRkFiRe - So 09.03.03 23:59

Die Freigabe erfolgt nach einer Hierarchie. Demnach werden alle Unterobjekte AUTOMATISCH freigegeben, bevor das Elternelement schließlich freigegeben wird... Demnach sollte ein Aufruf von Free überflüssig sein. Allerdings dient es dem Aussehen des Source-Codes.

ServerSocket schließen - aber Freigeben der Komponente übernimmt die Form, denn wer gibt schon alle Komponenten der Form Buttons, Labels, Edits usw. von Hand frei!?