Hello Wilfried, Yes, I came to same conclusion too when you told me it worked fine with TWSocket. Now I simply set FSessionClosedFlag:=False before calling .Connect again and all is fine. I also added some FConnectDidError:=ErrCode in OnSessionConnected so when OnSessionClosed is called I test OnSessionClosed's ErrCode and also FConnectDidError then if one of them <>0 then I set Timer to make new .Connect some seconds later.
But I am still looking how to add the reverse connected TWSocketClient into the main TWSocketServer client's list. Actually once reverse'd TWSocketClient is connected I set it same OnDataAvailable/OnDataSent as other standard TWSocketServer clients as only connection and disconnection have to be handled differently. Regards. WM> Did some additional research. If you wants to use TWSocketClient instead WM> of TWSocket to initiate a connection, then you have to set WM> FSessionClosedFlag := False; in the OnSessionClosed event. If you do not WM> then OnSessionClosed will not trigger a second time. WM> --- WM> Rgds, Wilfried [TeamICS] WM> http://www.overbyte.be/eng/overbyte/teamics.html WM> http://www.mestdagh.biz WM> Sunday, March 19, 2006, 19:03, Wilfried Mestdagh wrote: >> Hello Dod, >>> In the SessionClosed I start a Timer that will send a message 20 >>> second later to retry a .Connect, but this new try will only produce a >>> OnSessionConnected not followed by a SessionClosed, any idea why ? >> I examined the project that demonstrate the problem. The client you use >> is derived from TWSocketClient instead of TWSocket. If you change it to >> TWSocket the connect / closed works every time. TWSocketClient's >> OnSessionClose is normally handled by TWSocketServer, so that's the >> reason your OnSessionClose does not trigger. >> I'm not sure wy it is fired the first time. This make it confusing. >> --- >> Rgds, Wilfried [TeamICS] >> http://www.overbyte.be/eng/overbyte/teamics.html >> http://www.mestdagh.biz >> Saturday, March 18, 2006, 14:01, Dod wrote: >>> Hello, >>> I am actually doing some crash test on my server to handle as many >>> situations as possible. >>> I have a problem in a failed socket .Connect >>> I create a few sockets to .Connect them to some remote points. The >>> .Connect will excecute and fail because there is nothing listening on >>> destination (this is wanted situation to test my auto re-connect >>> feature). >>> The failure to connect will trigger a OnSessionConnected event with >>> Error 10061 followed by a SessionClosed. >>> In the SessionClosed I start a Timer that will send a message 20 >>> second later to retry a .Connect, but this new try will only produce a >>> OnSessionConnected not followed by a SessionClosed, any idea why ? >>> But may be it is the first OnSessionClosed that should never happend ? >>> 2006/03/17 18:29:39 !> OutgoingConnectorSessionConnected >>> [EMAIL PROTECTED]:5433 (10061 Connection refused) >>> 2006/03/17 18:29:39 !> OutgoingConnectorSessionClosed >>> [EMAIL PROTECTED]:5433 (0 No Error) >>> 2006/03/17 18:29:39 !> OutgoingConnectorSessionConnected >>> [EMAIL PROTECTED]:5434 (10061 Connection refused) >>> 2006/03/17 18:29:39 !> OutgoingConnectorSessionClosed >>> [EMAIL PROTECTED]:5434 (0 No Error) >>> 2006/03/17 18:29:52 !> OutgoingConnectorSessionConnected >>> [EMAIL PROTECTED]:5433 (10061 Connection refused) >>> 2006/03/17 18:29:53 !> OutgoingConnectorSessionConnected >>> [EMAIL PROTECTED]:5434 (10061 Connection refused) -- To unsubscribe or change your settings for TWSocket mailing list please goto http://www.elists.org/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be