TidTCPClient期待来自TidTCPServer的回复

时间:2016-03-18 08:46:27

标签: delphi-7

我正在尝试创建一个简单的TCP客户端/服务器应用程序。因此,服务器将等待来自客户端的命令。收到命令后,服务器将执行一些可能需要60秒的任务。在此期间,TCP客户端应等待这些任务的结果。

使用“WriteLn”和“ReadLn”方法完成命令的发送和接收。

但是,我不知道如何为TCP客户端做“等待”部分。因为我没有在TidTCPClient中看到任何可以捕获此事件的事件。

我尝试使用“ReadLn”超时,但似乎不起作用。

  recv := '';
  recv := TCPClient.ReadLn(#0, 30*1000);

在服务器上,30秒之前,我发送了一些东西:

AThread.Connection.WriteLn('SUCCESS');

但是从未收到过。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

显然,我应该用这个:

recv := TCPClient.ReadLn('', 30*1000);

而不是:

recv := TCPClient.ReadLn(#0, 30*1000);

然后问题就解决了。