Hello,

In my app (D6), I use the Indy components TIdTCPClient and TIdTCPServer to
communicate using an application specific protocol. The protocol is designed
similar to standard internet protocols, using text commands that require
text response. With NT, everything used to work OK, but with XP I have a
mysterious problem. For some commands the server produces a multiline
response. On the server side, for all of these commands, all lines of output
are correctly generated by the server and correctly written to the
connection. But for some of those commands, only the first line of the
response can be read by the client. Reading the rest of the response leads
to a timeout. In my efforts to debug this, I have the client send a second
command to the server and read the response to that command. But, in stead
of the response for the second command, the client receives the 2nd line of
the response of the first command. An attempt to read the 3rd line after
that, also leads to a timeout. It would take another command to be sent to
the server to be able to read that 3rd line.

The strange situation is, that this anomaly occurs but for a few of the
implemented commands. On the server side, these are handled in the OnExecute
handler of the TIdTCPServer and this is done the same way for all commands.

To eliminate the possibities of bugs in the client app, I used PuTTY in raw
mode to send commands to the server. If I run PuTTY on NT, it works, on XP
it doesn't work. I tested it with the server on XP, NT, or Win2000, but that
doesn't make a difference.

Has anyone encountered something like this before?

Regards,

Peter Laman
----------------------------------
The Lance Group,
software to promote plant safety in the Process Industry
Web: http://www.lance-safety.com

__________________________________________________
Delphi-Talk mailing list -> Delphi-Talk@elists.org
http://www.elists.org/mailman/listinfo/delphi-talk

Reply via email to