在这种情况下我应该如何恢复?
服务器崩溃,连接异常关闭。对几乎所有内容的调用都会导致“对等连接重置”异常。我似乎已经通过在 except 块内的 TIdTCPClient 对象上调用 Disconnect 来修复它,但它会导致一个具有相同消息的最终异常(我在第二个 try-except 块中捕获)。
这是 Indy10 和 Delphi XE2。
try
if not EcomSocket.Connected then EcomSocket.Connect();
except
on e: Exception do begin
try
EcomSocket.Disconnect();
except
MessageDlg('Connectivity to the server has been lost.', mtError, [mbOK], 0);
end;
end;
end;