[英]Image.FromStream using networkStream
我正在尝试使用类Image的FromStream方法来设置使用网络流通过tcp连接接收的图像。 这里有双方代码:
服务器:
TcpListener server = new TcpListener(IPAddress.Any, 34567);
server.Start();
TcpClient client = server.AcceptTcpClient();
byte[] buffer = new byte[256];
int n = 0;
Console.WriteLine("{0}, {1}", Encoding.ASCII.GetString(buffer, 0, n), client.Client.RemoteEndPoint);
byte[] img = File.ReadAllBytes(@"C:\Users\Luca\Desktop\video grest\8599929-nessun-segnale.jpg");
client.Client.Send(img);
客户:
TcpClient tcp = new TcpClient("127.0.0.1", 34567);
NetworkStream stream = tcp.GetStream();
MessageBox.Show("fatto");
pictureBox1.Image = Image.FromStream(stream);
问题是客户端程序在最后一条指令上停止并且它没有前进,如果关闭服务器(甚至30分钟后),它说连接已关闭但是图片框没有显示任何内容......为什么?
提前致谢。
我认为你的客户端代码
pictureBox1.Image = Image.FromStream(stream);
期望在处理图像之前结束流。
因此,您应该使用以下命令关闭套接字服务器端:
client.Close();
刚过:
client.Client.Send(img);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.