socket.Send(byte[] buffer)方法能保证一次发送完所有buffer内容吗?
socket.Receive(byte[] buffer)方法在需要接收的字节数小于buffer.Length时能保证一次收到所有的内容吗?解密时显示“要解密的数据的长度无效”是什么意思?怎么它有时候是好的,有时候又抛这个异常!

解决方案 »

  1.   

    唉,自己可以解答这个问题了,可惜自己不能给自己分,顶几下吧,分就是你的了。Send和Receive是能保证我以上问题的。最起码我的测试结果和微软的文档都说能。“要解密的数据的长度无效”是因为加密技术除了可以加解密还可以保证数据完整性,当然可不可靠就不知道了。这是因为我的数据没有完整,所以抛出这个异常。
      

  2.   

    Receive有可能接收超过一次的内容,不区分的话有时会出问题
      

  3.   

    http://pierce.cnblogs.com/category/22231.html