Müsste es nicht so aussehen:
Delphi-Quellcode:
...
gauge2.Progress:=i;
//Wenn Connected -> Disconnect
if TcpClient1.Connected then
TcpClient1.Disconnect;
//neuen Port setzen
TcpClient1.RemotePort:=inttostr(i);
//jetzt neue Verbindung aufbauen
TcpClient1.Connect;
//Falls fehlgeschlagen, dann springt er in den except Block
listbox1.Items.Add('Port ' + inttostr(i) + ' ist geschlossen');
...