在OnConnection事件里写,不要在OnAccept事件里写

解决方案 »

  1.   

        ClientSocket1.Active:=True;
        ClientSocket1.Socket.SendText (FormatDateTime('yyyy-mm-dd',DateTimePicker1.Date));虽然可能不是这个原因,但是最好不要在Active:=True 之后马上就SendText;
      

  2.   

    我朋友(夏夜雨)说的对,
      ClientSocket1.Active:=True;
      ClientSocket1.Socket.SendText (FormatDateTime('yyyy-mm-dd',DateTimePicker1.Date));
      ClientSocket1.Active:=False;
    这儿写的不对,ClientSocket1.Active:=True;写了以后要在ClientSocket1的OnConnect事件里写Socket.SendText (FormatDateTime('yyyy-mm-dd',DateTimePicker1.Date));
    然后才能再置false;
    最后Server端的接收也最好写在OnClientRead事件里,毕竟你只有一个client端对它发数据。