在客户端触发一个事件,用clientsocket发送消息,语句为:
clientsocket1.socket.sendbuf(sendVar, 4);
在服务器端serversocket的clientread事件中接收,语句如下:
socket.receiveBuf(receVar, 4);
为什么会出错?

解决方案 »

  1.   

    又有问题:为什么客户端
    clientsocket1.socket.SendBuf(x1,sizeOf(integer));
    在服务器
    socket.ReceiveBuf(x1, sizeOf(integer));
    传送接收正确。但是客户端连续执行两次:
    clientsocket1.socket.SendBuf(x1,sizeOf(integer));
    clientsocket1.socket.SendBuf(y1,sizeOf(integer));
    在服务器相应执行
    socket.ReceiveBuf(x1, sizeOf(integer));
    socket.ReceiveBuf(y1, sizeOf(integer));
    后接收到的数据就不对了呢?
      

  2.   

    为什么不这样呢
    clientsocket1.socket.SendBuf(x1,sizeOf(x1));
    socket.ReceiveBuf(y1, sizeOf(x1));
    你试试看.
      

  3.   

    很简单:在两个receivebuf函数中间:sleep(100)一下,就行了,
    我不知道原因,听说是微软没事找事做
      

  4.   

    to outer2000:
      sorry,我有点不明白
      我是在clientread中连续写入的:
        socket.ReceiveBuf(x1, sizeOf(integer));
        socket.ReceiveBuf(y1, sizeOf(integer));
      是这个问题吗?
    to copy_paste:
      加入sleep了,还是不好使