Newsgroups : Borland : borland.public.delphi.internet.winsock : 2007 Sep : Re: TIdTCPClient socket error
| Subject: | Re: TIdTCPClient socket error |
| Posted by: | "Remy Lebeau (TeamB)" (no.spam@no.spam.com) |
| Date: | Fri, 21 Sep 2007 15:51:03 |
"Toby Piper" <news@CompCraft.com> wrote in message
news:46f41eae$1@newsgroups.borland.com...
> EIdSocketHandleError
That is not what I meant. I was asking what the actual Error Code and
Message text for the socket error were. However, EIdSocketHandleError
(which is a base class for other exception types and thus is never raised
directly) is not raised when a real socket error occurs, so there is no
Error Code available from the OS.
Since EIdSocketHandleError is a base class, what is the actual descendant
class that is being raised? There are 7 different exception types that
derive from EIdSocketHandleError.
> No it doesn't. Something seems to be keeping it open (perhaps
> because I'm not to the writebuffercancel that you suggested?)
> as it does not set Connected to false.
Calling Disconnect() is not supposed to set Connected to false. There are
other conditions that allow Connected to remain true. You have already hit
on some of them - Connected is true when there is pending unread data still
in the InputBuffer.
> Does that mean that I then need to enable the write buffer when
> I (or before) I reconnect?
No. Most of the time, you shouldn't be enabling write buffering to begin
with.
Gambit
none