to Aeolian:
  我换了好几个,都不行,不知为什么?

解决方案 »

  1.   

    client端的ClientType还有一个类型,叫什么来的,试试
      

  2.   

    不行,另外一个是阻塞模式,不能这样设,现在我的active:=true不死机了,但运行到clientsocket.socket.sendtext('hello')时就报socket没连接,sendto找不到地址,但server段的serversocketclientread事件已经触发了,不知道错在那里?谢谢!
      

  3.   

    你的电脑有问题吧,别人都没有遇到这个问题.还有clientsocket.active:=ture的时候
    要等待其连接上才能发送数据,不能一赋值就发送,他还没连接上呢(近的要1-2秒,远的
    要好几秒).
      

  4.   

    对,
    不能在Active:=True之后马上SendText;
    要等一段时间Sleep()或者在ClientSocket的OnConnect中写入Socket.SendText;
      

  5.   

    问题关键在于你要连接的 IP 主机上,,应该用 HOST :=.... 不是 ADDRESS:=....
      

  6.   


    你的server端必须用当前建立的套接字,它使用recievedata触发事件的参数socket传递
    因此server端应改为:
    procedure TForm1.ServerSocketClientRead(Sender: TObject;
      Socket: TCustomWinSocket);
    begin
      showmessage(socket.ReceiveText );
               // ~~~~~~
    end;
      

  7.   

    是不是应该先运行socket?
    我记得在delphi目录下就有...