using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net; using System.Net.Sockets; using System.Threading; using System.IO; using System.Xml; namespace UDPTest2_2 { public partial class Form1 : Form { Thread thread; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { Form1.CheckForIllegalCrossThreadCalls = false; //不可在多线程中使用 thread = new Thread(new ThreadStart(ReceiveDataFromUDPClient)); //调用类 thread.IsBackground = true; //是否结束线程 thread.Start(); //开始运行 } public void ReceiveDataFromUDPClient() { try{ while (true) { XmlDocument doc = new XmlDocument(); //调用XML doc.Load("XMLFile1.xml"); //指定Xml文件路径 XmlNode node; //读取节点 node = doc.SelectSingleNode("//Config/SvcInfo/SvcPort/text()"); //读取XML节点 string svcPort = node.Value; //定义节点数值 if (svcPort.Length > 0) //当对象>0时,执行程序 { UdpClient udpClient = new UdpClient(int.Parse(svcPort)); //实例化一个对象 IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, int.Parse(svcPort)); //获得从主机返回的Udp数据 Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint); //获得服务器端的数据 string returnData = Encoding.Default.GetString(receiveBytes); //获得相应主机的ip和port textBox1.Text = DateTime.Now + "时:" + returnData.ToString(); //显示日期和接收到的数据 udpClient.Close(); } //关闭UDP连接 } } catch(Exception y) { MessageBox.Show(y.Message); } } private void button1_Click(object sender, EventArgs e) { this.Close(); } } }
代码如上,就是从Ipad上发送一张图片,存到FTP目录下,接收端winfrom窗体立即读取上传的图片,求各位大神指导。。万分感谢
1:实时接收图片
就是从Ipad上发送一张图片,
电脑端接收,存到FTP目录下,
接收端的winfrom窗体中能立即读取当前上传的图片,:
2:查看历史记录图片
就是从Ipad上发送的图片,
电脑端接收到之后存储存到FTP目录下,
当发送端点击历史图片时,接收端显示当前发送端点击的图片