发送方采用广播形式RemoteHost设为255.255.255.255

解决方案 »

  1.   

    是否先由客户端发出请求,服务端再穿图片呢?如果是这样就可以用RemoteHostIP属性来确定对方IP。如果是主动发,那就用255.255.255.255这个广播地址。
    或者先广播,客户端返回响应,服务段再发。
      

  2.   

    我的意思很简单:
    假如你是一位大款(Server),要给咱们(Client)发钱,但是有的人不缺钱,不想要;有的人很穷(比如我),很需要,但是你呢,不知道该给谁发。于是你就对着
    咱们大喝一声:“发钱了!"(用广播地址发出消息)。咱都听见了,于是乎我等穷人就偷偷(因为不好意思让别人知道)告诉你:“我要你的钱……”(响应消息并请求服务),然后呢你就知道该给谁发钱了……
      

  3.   

    在广域网上,申请一个域名或者固定IP是必要的。这样客户端才能确定向那一台服务器发出请求。或者用其他类似的方法来达到,比如申请一个
    Email地址,然后服务端启动时把自己的地址发到那里去,客户端定时查询……
      

  4.   

    首先是客户端必须先向服务端发出请求,这是原则,否则就不叫客户端了。
    在TCP协议中都是客户端调用Connect方法连接服务器的,使用UDP协议时也要遵循这一原则,先向服务端发出消息,除非是服务端广播。
    服务端接收到客户端的Data时,Winsock控件的RemoteHostIP属性就是客户端的IP,而RemoteHostPort就是客户端的端口号(在DataArrival事件中),如果你需要向多个请求的客户端同时发送数据,那么可以使用Winsock控件数组,在
    接收到一个客户端的请求时Load一个Winsock向该客户端发送图片,因为SendData方法是异步的,所以这个事情很好办