Esempio n. 1
0
        private void toolStripButton5_Click(object sender, EventArgs e)
        {
            if (this.listView1.SelectedItems.Count == 0)
            {
                MessageBox.Show(translate.getInfo("form1", "btn5_show"));
                return;
            }

            ListView.SelectedIndexCollection c = this.listView1.SelectedIndices;

            netForm_Mac form3 = new netForm_Mac();

            form3.setMac(listView1.Items[c[0]].SubItems[1].Text);
            form3.ShowDialog();
            if (form3.DialogResult == DialogResult.OK)
            {
                TCmdHead xCmd = new TCmdHead();
                xCmd.cmd = 0x02FE;
                xCmd.mac = funs.Mac2Byte(listView1.Items[c[0]].SubItems[1].Text);
                byte[] NewMac = funs.Mac2Byte(form3.GetMac());

                int         CmdSize = Marshal.SizeOf(xCmd);
                byte[]      xBuf    = funs.copybyte(funs.StructToBytes(xCmd, CmdSize), NewMac);
                netdata_new netData = (netdata_new)listView1.Items[c[0]].Tag;
                udpclient.send(xBuf);

                listView1.Items[c[0]].SubItems[1].Text = form3.GetMac();

                toolStripButton1_Click(sender, e);
            }
        }
Esempio n. 2
0
        protected override void PacketReceived(UDPPacketBuffer buffer)
        {
            TCmdHead     xCmd        = new TCmdHead();
            IWin32Window win32Window = UIForm;

            xCmd = (TCmdHead)funs.ByteToStruct(buffer.Data, xCmd.GetType());
            int len = Marshal.SizeOf(xCmd);

            switch (xCmd.cmd)
            {
            case 0x00FD:    //查询返回指令
            {
                netdata_ex_new _data;
                netdata_new    xcfg    = new netdata_new();
                byte[]         newdata = funs.SubByte(buffer.Data, len, buffer.DataLength - len);
                xcfg.xdata     = (netdata)funs.ByteToStruct(newdata, xcfg.xdata.GetType());
                UIForm._curMac = funs.Byte2Mac(xCmd.mac);
                IPEndPoint Ip = (IPEndPoint)buffer.RemoteEndPoint;
                xcfg.IP         = Ip.Address.GetAddressBytes();
                xcfg.ipEndPoint = Ip;
                _data.xCmd      = xCmd;
                _data.xdata     = xcfg;
                UIForm._doAddItem(_data);
            }
            break;

            case 0x01FD:
            {
                udpclient.send(funs.Byte2Mac(xCmd.mac), 0x03fe);
            }
            break;

            case 0x02FD:
            {
                string sMac = funs.Byte2Mac(xCmd.mac);
                MessageBox.Show(win32Window, translate.getInfo("form1", "cmd_result_mac"));
            }
            break;

            case 0x03FD:
            {
                if (UIForm.flag == 1)
                {
                    UIForm._doClearList(1);
                    udpclient.send(Encoding.Default.GetBytes("www.cdebyte.comwww.cdebyte.com"));
                    flag = false;
                    MessageBox.Show(win32Window, translate.getInfo("form1", "cmd_result_cfg"));
                    UIForm._doPatchUI(2000);
                }
                if (UIForm.flag == 2)
                {
                    MessageBox.Show(win32Window, translate.getInfo("form1", "cmd_result_reboot"));
                }
                UIForm.flag = 0;
            }
            break;

            default:
                break;
            }
        }
Esempio n. 3
0
        private void doAddItem(object itemData)
        {
            netdata_ex_new _ex_data = (netdata_ex_new)itemData;
            netdata_new    _data    = _ex_data.xdata;
            string         _Mac     = funs.Byte2Mac(_ex_data.xCmd.mac);

            _curMac = _Mac;
            foreach (ListViewItem item in this.listView1.Items)
            {
                if (item.SubItems[1].Text == _curMac)
                {
                    item.SubItems[4].Text = ntohs(_data.xdata.objport).ToString();
                    return;
                }
            }
            ListViewItem lvi = new ListViewItem();

            lvi.Tag  = _data;
            lvi.Text = (listView1.Items.Count + 1).ToString();
            lvi.SubItems.Add(_curMac);
            lvi.SubItems.Add(protocol_info[_data.xdata.protocol]);
            if (_data.xdata.domain_type == 0)
            {
                byte[] x = new byte[4];
                x[0] = _data.xdata.desc[0];
                x[1] = _data.xdata.desc[1];
                x[2] = _data.xdata.desc[2];
                x[3] = _data.xdata.desc[3];
                lvi.SubItems.Add(funs.ByteArrayToIPAddress(x));
            }
            else
            {
                lvi.SubItems.Add(Encoding.Default.GetString(_data.xdata.desc));
            }
            lvi.SubItems.Add(ntohs(_data.xdata.objport).ToString());
            lvi.SubItems.Add(funs.ByteArrayToIPAddress(_data.IP));
            lvi.SubItems.Add(ntohs(_data.xdata.localport).ToString());
            if (_data.xdata.Version == 0)
            {
                lvi.SubItems.Add("- -");
            }
            else
            {
                if (Rf.Models.Length >= _data.xdata.Version)
                {
                    lvi.SubItems.Add(Rf.Models[_data.xdata.Version - 1]);
                }
                else
                {
                    lvi.SubItems.Add("unknown");
                }
            }

            if (netcfg.E830_ETH2A.E830ETH_Flag == false && _data.xdata.Version == 8)
            {
                MessageBox.Show("型号选择错误,请重新选择");
            }
            else
            {
                this.listView1.Items.Add(lvi);
            }
            float ver = (float)Convert.ToDouble(Convert.ToString(_data.xdata.E_Version, 16)) / 10;

            lvi.SubItems.Add("V" + string.Format("{0:F1}", ver));
        }