如何解决如何在主从配置中建立连接?
我想在做一些数值工作的主机和许多从机之间建立连接。双方都应该发送和接收命令和数据。我的问题是-在一个主服务器中使用一个idCmdTcpserver并在每个从属服务器中使用一个idCmdTCPClient是否足够?或者这需要在主服务器和每个从属服务器中使用一对Cmdserver和CmdClient? 这是我第一个使用Indy(v。10)和远程应用程序之间进行TCP通信的应用程序。在从属端使用idCmdTCPCLient时,我看到了一些问题-看起来在接收对主控器中发送给idCmdTcpserever的命令的答复时遇到了麻烦。当我将idCmdTCPClient替换为idTCPClient时,它将正常接收答复。
procedure TFSlave.btn_HeartbeatClick(Sender: TObject);
const
Cmd = 'HEARTBEAT';
var
Reply: TIdReply;
begin
display('Slave','sending command: "' + Cmd + '"');
IdTCPClient.SendCmd(Cmd,200);
Reply := IdTCPClient.LastCmdResult;
display('btn_Click','Master replied with: ');
display('btn_Click','"' + Reply.Code + ' ' + Reply.Text.Text + '"');
end;
其中display()将文本行发送给TMemo事物。
当idTCPCLient为TIdTCPCLient类型时,上述方法起作用,但当其为TIdCmdTCPClient时,则卡住。
所以我的问题是:应该使用哪些Indy-10组件来修复通信? 感谢您对问题的建议或解释。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。