3

我注意到当我正在与之交谈的设备发送 RESET 响应时,我收到了一个带有 LastError = 10054 或 10053 的 EIdSocketError。这是有道理的,因为 10054 是 Connection Reset By Peer。

那么有什么我可以在 Indy 中检查以确定是否发生这种情况,而不是将我的代码包装在 try/except 块中并查找 10054 或 10053 错误代码?

我遇到的一种情况是调制解调器在我连接后回复了 RESET 回复(Indy 没有引发异常),所以从我的角度来看,连接成功。然后我尝试写入套接字(即使用 TidTCPClient 发送数据包)并引发 10054 错误。

是否有可能看到这个 RESET 回复?

谢谢

4

1 回答 1

2

使用try..except是正确的方法。Indy 通过异常进行通信。在 Indy 眼中,即使是“优雅地关闭连接”也是一个例外。

于 2012-03-21T12:20:53.960 回答