Hello Arno, I expect to get a data record of N byte length. I'd like to wait until the whole record has been received then I can call Receive() to read it back. Otherwise, if a OnDataAvailable() is triggered before the whole record is received, I will have to temporarily store it somewhere and concatenate the data.
If RcvdCount is not reliable, I can probably use PeekData() but this is not very efficient because the data might be copied twice each by PeedData() and Receive(); -- Best regards, Jack Tuesday, October 24, 2006, 11:36:32 AM, you wrote: > Francois PIETTE wrote: >>>> I know I know :) I was trying to ask if I can get that info >>>> without calling Receive() and ReceiveStr() :) >>> >>> var >>> Count : Integer; >>> >>> WSocket_ioctlsocket(WSocket1.HSocket, FIONREAD, Count); >> >> There is an article on MSDN which says this function is not reliable >> (http://support.microsoft.com/default.aspx?scid=kb;en-us;192599). See >> also comment dated Nov 26, 2000 (V4.25) in wsocket.pas. >> > Now I remember. Usually you realy don't need to call it, > Jack should explain why he wants to know how much data is pending > w/o receiving it, sounds like a bad design. > --- > Arno Garrels [TeamICS] > http://www.overbyte.be/eng/overbyte/teamics.html >> You have access to this value thru the property RcvdCount. >> >> -- >> Contribute to the SSL Effort. Visit >> http://www.overbyte.be/eng/ssl.html -- >> [EMAIL PROTECTED] >> http://www.overbyte.be -- 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