首页 新闻 会员 周边

Tcp传输数据出现错误:无法从传输连接中读取数据: 由于连接方在一段时间后没有正确答复或连接的主机没有

0
[已解决问题] 解决于 2015-03-08 20:24

Tcp传输数据出现错误:无法从传输连接中读取数据: 由于连接方在一段时间后没有正确答复或连接的主机没有

服务端:

void IOReceiveCompleted(object sender, ReceiveCompletedEventArgs e)
        {
            MessageQueue mq = (MessageQueue)sender;
            mq.Formatter = new XmlMessageFormatter(new Type[] { typeof(XmlDocument) });
            System.Messaging.Message m = mq.EndReceive(e.AsyncResult);
            XmlDocument xml = (XmlDocument)m.Body;
            string str = xml.DocumentElement.SelectSingleNode(@"Content").InnerText;
            byte[] senbyts = System.Text.Encoding.Default.GetBytes(str);
            NetworkStream stream = null;
            foreach (TcpClient item in clients)
            {

                try
                {
                    stream = client.GetStream();
                    stream.Write(senbyts, 0, senbyts.Length);
                }
                catch
                {
                }
            }
            mq.BeginReceive();
        }

 

客户端

Int32 port = 12397;
                TcpClient client = new TcpClient(server, port);
                Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);
                NetworkStream stream = client.GetStream();
                data = new Byte[256];
                String responseData = String.Empty;
                client.ReceiveTimeout = 0;
                while (true)
                {
                    Int32 bytes = stream.Read(data, 0, data.Length);
                    responseData = System.Text.Encoding.Default.GetString(data, 0, bytes);
                    Console.WriteLine("Received: {0}", responseData);
                }
问题补充:

异常出现在服务端Try Catch语句中。

大芝麻的主页 大芝麻 | 初学一级 | 园豆:4
提问于:2015-03-06 17:22
< >
分享
最佳答案
0

我就没明白,你到底在学啥,MVC还是SOCKET编程,

这么难的两门技术你居然并行学习,这个学习能力太强了。

能不能专心先学好一样?

奖励园豆:5
爱编程的大叔 | 高人七级 |园豆:30839 | 2015-03-06 22:00

是哦,我也是这样想的一样一样来多好。可是实际上也没办法,人家要这么做我只能这么干。。唉,,找来找去还是没找到是哪里出问题了,难不成TCP连接 会自动断开吗。

大芝麻 | 园豆:4 (初学一级) | 2015-03-07 16:21

@大芝麻: 那买本书行不,我求你了。

要不你把微软关于SOCKET的示例子看看也行啊。

爱编程的大叔 | 园豆:30839 (高人七级) | 2015-03-07 21:46

@爱编程的大叔: ....怎么感觉很受打击

大芝麻 | 园豆:4 (初学一级) | 2015-03-07 22:10

@爱编程的大叔: 我看了,就是照抄的MSDN的例子做的。https://msdn.microsoft.com/zh-cn/library/system.net.sockets.tcpclient(v=vs.90).aspx

 

大侠求指导啊。。。。。。。。。

大芝麻 | 园豆:4 (初学一级) | 2015-03-07 22:31

@大芝麻: 

要不你在园里面找找吧,帮你找了一个。

你得学会并且学得会的Socket编程基础知识

爱编程的大叔 | 园豆:30839 (高人七级) | 2015-03-07 22:40

@爱编程的大叔: 受益匪浅,问题已解决,谢谢!膜拜@!今后多多指教!

大芝麻 | 园豆:4 (初学一级) | 2015-03-08 20:24
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册