抱歉,对于Indy文档的links目前无效。我不知道网站是否已关闭或其他什么,但目前我的浏览器中没有加载它们。
我在一个“服务器”应用程序中有一个TIdCmdTcpServer,在另一个“客户端”应用程序中有一个TIdCmdTcpClient。我知道如何在连接后获取客户端的IP地址。我不知道的是如何区分从同一个IP地址连接的2个客户端。任何人都可以帮助吗?
答案 0 :(得分:4)
这不是一个Indy问题,更像是一个普通网络问题。
同一地址的不同客户端必须使用不同的端口。这里我指的是连接客户端的端口。因此,您可以使用不同的端口来区分同一地址的不同客户端。
答案 1 :(得分:1)
请勿将TIdCmdTCPClient
与TIdCmdTCPServer
一起使用。它们并不意味着一起使用,并且很容易与它们进行通信死锁,因为它们都使用内部读取线程,希望其他对等方发送数据。将TIdTCPClient
与TIdCmdTCPServer
或TIdCmdTCPClient
与TIdTCPServer
一起使用。
话虽如此,您可以使用客户端的远程IP /端口进行区分,但通常最好自己制作标识符,例如要求客户端使用用户名登录,然后根据需要进行跟踪。