使用networkStream的Image.FromStream

2024-01-09

我正在尝试使用该方法FromStream班级的Image设置使用网络流通过 tcp 连接接收的图像。 这是两侧代码:

Server:

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);

Client:

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);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用networkStream的Image.FromStream 的相关文章

随机推荐