• 大小: 432KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2022-08-14
  • 语言: C#
  • 标签: C#  UDP  无连接  

资源简介

本人从所得各种资源整理、修改、重写而来的UDP通信程序。包含了原始工程文件(VS2010编译),内附写好的独立UDP通信类和实现通信的窗体应用程序。UDP拿去直接使用即可。为了方便童靴们的调试,和验证该程序的正确性,压缩包内同时附上网口调试程序(第三方)。拿去用吧,有问题留言。

资源截图

代码片段和文件信息

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.Threading;
using System.Net;
using System.Net.Sockets;

namespace UDPTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        UDP udp = null;
        Thread thdUDPListen;                                       //UDP侦听线程


        private void button2_Click(object sender EventArgs e)
        {
            if (udp == null)
            {
                //启动网络UDP通信
                udp = new UDP(textBox4.Text int.Parse(textBox3.Text));
                udp.MessageArrive += new UDP.MessageArriveHandler(udp_MessageArrive);           //注册消息到达事件
                udp.OpenUDPError += new UDP.OpenUDPErrorHandler(udp_OpenUDPError);                //注册打开UDP发生错误事件
                udp.OpenUDPSuccess += new UDP.OpenUDPSuccessHandler(udp_OpenUDPSuccess);          //注册打开UDP成功事件
                //线程
                thdUDPListen = new Thread(new ThreadStart(udp.ReceiveData));
                thdUDPListen.IsBackground = true;           //将线程设为后台运行 
                thdUDPListen.Start();

                button2.Text = “关闭“;
                textBox4.Enabled = false;
                textBox3.Enabled = false;
            }
            else
            {
                //关闭网络UDP通信
                udp.CloseUDP();
                thdUDPListen.Abort();
                udp = null;
                button2.Text = “开始“;
                textBox4.Enabled = true;
                textBox3.Enabled = true;
            }
        }

        //接收到数据
        private void udp_MessageArrive(UDP.MessageArriveEventArgs e)
        {
           
            byte[] bytaryRecv = e.message;
            this.Invoke((EventHandler)delegate
            {
                textBox6.AppendText(System.Text.Encoding.Default.GetString(bytaryRecv));
            });
        }

        //打开UDP发生错误
        private void udp_OpenUDPError(UDP.OpenUDPErrorArgs e)
        {
           
        }

        //成功打开UDP
        private void udp_OpenUDPSuccess(UDP.OpenUDPSuccessArgs e)
        {
            this.Invoke((EventHandler)delegate
            {
                button2.Text = “停止“;
            });
        }

        private void Form1_Load(object sender EventArgs e)
        {
            //IPAddress myIP = (IPAddress)Dns.GetHostAddresses(Dns.GetHostName()).GetValue(0);
            textBox1.Text = GetIPAddress();
            textBox4.Text = GetIPAddress();
        }

        private string GetIPAddress()
        {
            string hostname = Dns.GetHostName();
            IPHostEntry ipadrlist = Dns.GetHostByName(hostname);
            IPAddress localaddr = ipadrlist.AddressList[0];
            return localaddr.ToString();
        }

        priva

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件    1010688  2019-01-16 18:05  网口调试助手\NetAssist.exe

     文件       1794  2012-08-02 08:35  网口调试助手\使用说明.txt

     文件        191  2012-08-02 08:35  网口调试助手\当下软件园.url

     文件      14848  2019-03-13 17:14  UDPTest\UDPTest\bin\Debug\UDPTest.exe

     文件      54784  2019-03-13 17:14  UDPTest\UDPTest\bin\Debug\UDPTest.pdb

     文件      11600  2019-03-13 17:16  UDPTest\UDPTest\bin\Debug\UDPTest.vshost.exe

     文件        490  2010-03-17 22:39  UDPTest\UDPTest\bin\Debug\UDPTest.vshost.exe.manifest

     文件       3383  2019-03-13 17:14  UDPTest\UDPTest\Form1.cs

     文件       8978  2019-03-13 16:51  UDPTest\UDPTest\Form1.Designer.cs

     文件       5817  2019-03-13 16:51  UDPTest\UDPTest\Form1.resx

     文件       4501  2018-07-23 16:08  UDPTest\UDPTest\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache

     文件       6245  2019-03-13 17:14  UDPTest\UDPTest\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件        564  2019-03-13 16:51  UDPTest\UDPTest\obj\x86\Debug\GenerateResource.read.1.tlog

     文件       1426  2019-03-13 16:51  UDPTest\UDPTest\obj\x86\Debug\GenerateResource.write.1.tlog

     文件       8031  2019-03-13 17:11  UDPTest\UDPTest\obj\x86\Debug\ResolveAssemblyReference.cache

     文件       3409  2019-03-13 17:16  UDPTest\UDPTest\obj\x86\Debug\UDPTest.csproj.FileListAbsolute.txt

     文件        975  2018-07-03 10:11  UDPTest\UDPTest\obj\x86\Debug\UDPTest.csproj.GenerateResource.Cache

     文件       9174  2018-07-02 09:25  UDPTest\UDPTest\obj\x86\Debug\UDPTest.csprojResolveAssemblyReference.cache

     文件      14848  2019-03-13 17:14  UDPTest\UDPTest\obj\x86\Debug\UDPTest.exe

     文件        180  2019-03-13 16:51  UDPTest\UDPTest\obj\x86\Debug\UDPTest.Form1.resources

     文件      54784  2019-03-13 17:14  UDPTest\UDPTest\obj\x86\Debug\UDPTest.pdb

     文件        180  2019-03-13 16:51  UDPTest\UDPTest\obj\x86\Debug\UDPTest.Properties.Resources.resources

     文件        488  2018-06-30 10:41  UDPTest\UDPTest\Program.cs

     文件       1346  2018-06-30 10:41  UDPTest\UDPTest\Properties\AssemblyInfo.cs

     文件       2866  2018-06-30 10:41  UDPTest\UDPTest\Properties\Resources.Designer.cs

     文件       5612  2018-06-30 10:41  UDPTest\UDPTest\Properties\Resources.resx

     文件       1094  2018-06-30 10:41  UDPTest\UDPTest\Properties\Settings.Designer.cs

     文件        249  2018-06-30 10:41  UDPTest\UDPTest\Properties\Settings.settings

     文件       5177  2019-03-13 17:01  UDPTest\UDPTest\UDP.cs

     文件       3707  2018-06-30 10:45  UDPTest\UDPTest\UDPTest.csproj

............此处省略15个文件信息

评论

共有 条评论