由于SGIP采用IP认证,所以我只能先连接到服务器,然后由服务器转发,结果郁闷的事情发生了。昨天我直接连接网关是可以接收到数据的,虽然告诉我认证失败,但是今天却总是不能接收到数据,而用 microsft网络监视器却发现有数据返回。 我原来的代码: SFTcp t=new SFTcp(); 出错信息: at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size) 修改为: Trace.WriteLine("接收数据:"+BitConverter.ToString(t.BinRd.ReadBytes(4) )); 则OK。 REC函数只是简单的封装:public byte [] Rec(int len) byte []b=BinRd.ReadBytes(len); 晕倒!◎#×◎……◎#※…… 现在居然又都可以了!!!!!!!!!!!!! BinaryReader.ReadBytes 方法 [C#]请参见 我怀疑和大小有关,如果读取小于数据流的个数,那么可以,如果读取大于数据流的个数,那么ERROR。 字体:大 中 小 |
![]() | 永久地址 http://www.shengfang.org/blog/p/csharpsocketread.php |
![]() | 引用地址 http://www.shengfang.org/blog/tb.php?tb_id=1120101666 |
2005年6月30日11:21星期四 [Dev开发]





