以上程序参考“Delphi之未经证实的葵花宝典version 2.7”/“Delphi数据压缩处理”。
正常通讯采用Socket,只有截屏的时候才用UDP。客户端的UDP连发送消息都没有用过,只用来接收图象数据。

解决方案 »

  1.   

    RsltStream.ReadBuffer(Count,SizeOf(Count))难道这句话的意思是返回流内的缓冲区长度?
    这个用法不对
    你应该用
    Count := RsltStream.Size;
    来替换这句话,你试一试!
      

  2.   

    我看例程里面是这样的,当时我也不明白为什么要用RsltStream.ReadBuffer(Count,SizeOf(Count)),结合程序一看,不就是需要获得Count的值嘛,我也用过Count:= RsltStream.Size,这样一来,错误就出现在了下一个“Stream Read Error”的地方,也就是SourceStream.ReadBuffer(Buffer^,Count);
      

  3.   

    感谢larky(睡仙) 提示,分值在问题获得解答之后奉上,再次感谢!
      

  4.   

    给我一份,[email protected] ,谢谢
      

  5.   

    信件已经成功发出,压缩文档29.8K,请yn8848(与飞)[[email protected]]查收
      

  6.   

    To:micher_yan()
      你的程序速度行不行?
      如果可以的話請給我發一份,我先謝過了!
      [email protected]
      

  7.   

    不好意思了,由于敢上周末休息,……
    在单机上运行没有问题的,不过要在网络上运行就不行了,传输的字节数在压缩前是8位数字,压缩后是6位数字(我们的屏幕都是1024X768的)。在不压缩的时候,网络运行几乎不能忍受。
    信笺已经发出,请[email protected]查阅
      

  8.   

    给我一份,谢谢
    [email protected]这个问题我也遇到过,经过逐步调试,发现用udp传输过程中数据包丢失,但如果在传输一个包后让程序暂停一段时间如:sleep(10)后,接收到的数据就是正确的;后来我用Tcp来做,也是同样情况。。请高手解答,谢谢!不过,后来用IdTcpServer,IdTcpClient就可以了,而且速度与性能最好,呵呵。。
      

  9.   

    信笺已发出,请[email protected]查阅,谢谢。
    说道数据包丢失,但是为什么在没有采用压缩的时候没有问题呢?压缩之前的数据是压缩后的100倍,理论上说数据包丢失的可能性应该更大啊?
      

  10.   

    给我一份好吗
    [email protected]
    谢谢拉
      

  11.   

    micher_yan()  ,请给我一份非常感谢!