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

Reply via email to