示例#1
0
 public UDPApp(int portLocal, int portRemote, MyOPC opc, LoggerClass log)
 {
     //创建一个UdpClient对象,0表示系统自动分配发送端口
     udpApp = new UdpClient(portLocal);
     //连接到服务端并指定接收端口
     udpApp.Connect("localhost", portRemote);
     this.opc = opc;
     this.log = log;
     //设置远程主机,(IPAddress.Any, 0)代表接收所有IP所有端口发送的数据
     //或 IPEndPoint remoteIpEndPoint = null;
     remoteIpEndPoint = new IPEndPoint(IPAddress.Any, portRemote);
 }
示例#2
0
        private void Form1_Load(object sender, EventArgs e)
        {
            listView1.Columns.Add("ClientHandles");
            listView1.Columns.Add("Tag值");
            listView1.Columns.Add("品质");
            listView1.Columns.Add("时间戳");


            listView1.Items.Add("端口1");
            listView1.Items.Add("端口2");
            listView1.Items.Add("端口3");


            listView1.Items[0].SubItems.Add("等待数据");
            listView1.Items[0].SubItems.Add("等待数据");
            listView1.Items[0].SubItems.Add("未启动");

            listView1.Items[1].SubItems.Add("等待数据");
            listView1.Items[1].SubItems.Add("等待数据");
            listView1.Items[1].SubItems.Add("未启动");

            listView1.Items[2].SubItems.Add("等待数据");
            listView1.Items[2].SubItems.Add("等待数据");
            listView1.Items[2].SubItems.Add("未启动");

            listView1.Items[0].Text             = "aa";
            listView1.Items[0].SubItems[1].Text = "bb";
            listView1.Items[0].SubItems[1].Text = "cc";
            //listView1.Items[0].SubItems.Add("等待数据1");
            //listView1.Items[0].SubItems.Add("等待数据1");
            //listView1.Items[0].SubItems.Add("未启动1");
            //GetLocalServer();
            LoggerClass log        = new LoggerClass();
            Config      cfg        = new Config(log);
            MyOPC       mp         = new MyOPC(log, cfg);
            object      serverList = mp.GetOPCServer(mp.GetHostName(mp.GetLocalIP()));

            foreach (string turn in (Array)serverList)
            {
                cmbServerName.Items.Add(turn);
            }
        }
示例#3
0
        private void Form2_Load(object sender, EventArgs e)
        {
            log = new LoggerClass("./log", EnumLogLevel.LogLevelAll, true, 100);
            cfg = new Config(log);
            mo  = new MyOPC(log, cfg);
            // opc程序UDP端口8765,显示程序UDP端口5678
            udp = new UDPApp(8765, 5678, mo, log);

            object serverList = mo.GetOPCServer(mo.GetHostName(mo.GetLocalIP()));

            foreach (string turn in (Array)serverList)
            {
                comboBox1.Items.Add(turn);
            }
            comboBox1.SelectedIndex = 0;

            if (cfg.Main.IsUseConfig)
            {
                listView1.Columns.Add("Tag名");
            }
            else
            {
                listView1.Columns.Add("句柄");
            }
            listView1.Columns.Add("Tag值");
            listView1.Columns.Add("品质");
            listView1.Columns.Add("时间戳");


            listView1.Items.Add("端口1");
            listView1.Items.Add("端口2");
            listView1.Items.Add("端口3");
            listView1.Items.Add("端口4");
            listView1.Items.Add("端口5");
            listView1.Items.Add("端口6");


            listView1.Items[0].SubItems.Add("等待数据");
            listView1.Items[0].SubItems.Add("等待数据");
            listView1.Items[0].SubItems.Add("未启动");

            listView1.Items[1].SubItems.Add("等待数据");
            listView1.Items[1].SubItems.Add("等待数据");
            listView1.Items[1].SubItems.Add("未启动");

            listView1.Items[2].SubItems.Add("等待数据");
            listView1.Items[2].SubItems.Add("等待数据");
            listView1.Items[2].SubItems.Add("未启动");

            listView1.Items[3].SubItems.Add("等待数据");
            listView1.Items[3].SubItems.Add("等待数据");
            listView1.Items[3].SubItems.Add("未启动");

            listView1.Items[4].SubItems.Add("等待数据");
            listView1.Items[4].SubItems.Add("等待数据");
            listView1.Items[4].SubItems.Add("未启动");

            listView1.Items[5].SubItems.Add("等待数据");
            listView1.Items[5].SubItems.Add("等待数据");
            listView1.Items[5].SubItems.Add("未启动");

            Task.Factory.StartNew(() => {
                udp.Receive();
            });
        }