想制作一个局域网聊天的程序,以前没学过,现在已经实现了服务端和客户端的消息发送。   服务端也可以知道客户端有多少连接着的。客户端是idtcpclient 服务端idtcpserver
2个人同时使用客户端,其中一个人如何知道另外一个连接上了呢还有就是要怎么发,用什么方法。
谢谢大家了

解决方案 »

  1.   

    如果是tcp,而且客户端不开tcp服务
    则只能通过服务器中转
      

  2.   

    就像QQ一样 客户端双方都要有一个唯一标识  如QQ号码 
    服务端维护一个张客户端列表及客户端的好友列表 (都可保存在数据库,当上线时改变一个状态标识)
    每当一个用户上线时 
    服务端做以下工作:
    1. 改变数据库中自己上线状态
    2.在数据库中查找自己的好友状态,并返回给客户端(定时查找,实时更新)
    3. 如果客户端本地的好友信息丢失(不完整),可重新下载返回好友信息给客户端。
    4.当发送信息给好友时,服务端根据好友的唯一标识 QQ号码,把你发送的信息转发给好友