Beispiel #1
0
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                WFHttpWebResponse WebResponse = new WFHttpWebResponse();
                string            url;
                byte[]            ss = StringsFunction.strToHexByte(textBox1.Text, " ");
                url = "http://www.mercedes-tool.com:9999/" + "AdminAPI/RegTE.aspx?ID=" + StringsFunction.byteToHexStr(ss, "");
                url = url + "&HexVer=" + textBox2.Text;

                HttpWebResponse hr  = WebResponse.CreateGetHttpResponse(url);
                string          ret = WebResponse.Content;
                if (ret == "ok")
                {
                    TextLog.AddTextLog(StringsFunction.byteToHexStr(ss, ""), System.Windows.Forms.Application.StartupPath + "\\regLog.txt", false);
                    MessageBox.Show("注册成功");
                }
                else if (ret == "reged")
                {
                    MessageBox.Show("已经注册");
                }
                else
                {
                    MessageBox.Show("注册失败:" + ret);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Beispiel #2
0
        private void btSendCommand_Click(object sender, EventArgs e)
        {
            byte[] tx;
            try
            {
                tx = StringsFunction.strToHexByte(tbTxData.Text, "");
                if (tx == null || tx.Length != 8)
                {
                    MessageBox.Show("数据发送区数据格式不合法,应为8字节,共16个字符");
                    return;
                }
            }
            catch (System.Exception ex)
            {
                MessageBox.Show("数据发送区数据格式不合法:" + ex.Message);
                return;
            }
            if ((tcpClient == null) || (!tcpClient.Connected))
            {
                MessageBox.Show("未连接网络");
                btConnect.Text        = "连接";
                btConnect.BackColor   = Color.Lime;
                btSendCommand.Enabled = false;
                btStartSave.Enabled   = false;
                timerSave.Enabled     = false;
                return;
            }
            NetworkStream stream = tcpClient.GetStream();

            stream.Write(tx, 0, tx.Length);
            int x = int.Parse(tbTxCount.Text);

            x += tx.Length;
            tbTxCount.Text = x.ToString();
        }
        public static bool CheckEncode_DES(VerifyMachineCode_DES vc)
        {
            lcyHashCal lcy = new lcyHashCal();
            DESCrypto  des = new DESCrypto();

            byte[] ID     = StringsFunction.strToHexByte(des.DecryptString(vc.ID, "wfMaCovf", "Machincd"), "");
            byte[] x      = lcy.HashCal(ID, lcyNum);
            byte[] Encode = StringsFunction.strToHexByte(des.DecryptString(vc.Encode, "wfMaCovf", "Machincd"), "");
            for (int i = 0; i < 8; i++)
            {
                if (x[i] != Encode[i])
                {
                    return(false);
                }
            }
            return(true);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            string ret = webAPIFunc.GetRetString(ErrType.UnkownErr);

            try
            {
                string post = WFHttpWebResponse.PostInput(Request.InputStream);
                if (string.IsNullOrEmpty(post))//没有这两个变量
                {
                    ret = webAPIFunc.GetRetString(ErrType.MissParam);
                    Response.Write(ret);
                    return;
                }
                post = post.Substring(0, post.Length - 1);
                byte[]           rx = StringsFunction.strToHexByte(post, "");
                KeyDataQueueData kd = new KeyDataQueueData();
                kd.DeviceID  = StringsFunction.byteToHexStr(rx, 0, 4, "");
                kd.KeyOption = BytesOP.MakeShort(rx[4], rx[5]);
                kd.format    = rx[6];
                kd.IP        = aspNetFunc.getIp();
                kd.SSID      = StringsFunction.byteToHexStr(rx, 7, 4, "");
                kd.BIN       = StringsFunction.byteToHexStr(rx, 7, 1024, "");
                if (DeviceInfoDataDBOption.Get(kd.DeviceID) == null)
                {
                    ret = webAPIFunc.GetRetString(ErrType.NoRegDevice);
                    Response.Write(ret);
                    return;
                }
                int queueID = KeyDataQueueDataDBOption.Insert(kd);
                if (KeyDataWork.bCalc == false)
                {
                    KeyDataWork.autoResetEvent.Set();
                }
                ret = webAPIFunc.GetRetString(ErrType.retOK, queueID.ToString());
                Response.Write(ret);
                return;
            }
            catch (System.Exception ex)
            {
                ret = webAPIFunc.GetRetString(ErrType.UnkownErr);
                TextLog.AddTextLog("Add_Unkown:" + ex.Message, Global.txtLogFolder + "KayData.txt", true);
            }
            Response.Write(ret);
        }
Beispiel #5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string id, HexVer;
            string ret;

            try
            {
                id     = Request.QueryString["ID"];
                HexVer = Request.QueryString["HexVer"];
                //信息|用户id|实验id,实验名,实验室;
                if (string.IsNullOrEmpty(id) || string.IsNullOrEmpty(HexVer))//没有这两个变量
                {
                    ret = "no data";
                }
                else
                {
                    byte[] bid = StringsFunction.strToHexByte(id, "");
                    double ver = double.Parse(HexVer);
                    if (DeviceInfoDataDBOption.Get(id) != null)
                    {
                        ret = "reged";
                    }
                    else
                    {
                        DeviceInfoData di = new DeviceInfoData();
                        di.ID     = id;
                        di.HexVer = ver;
                        DeviceInfoDataDBOption.Insert(di);
                        ret = "ok";
                    }
                }
            }
            catch (System.Exception ex)
            {
                ret = "Exception" + ex.Message;
            }
            Response.Write(ret);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            string ret         = webAPIFunc.GetRetString(ErrType.UnkownErr);
            string LinuxServer = ConfigurationManager.AppSettings["LinuxServer"];

            try
            {
                string post = WFHttpWebResponse.PostInput(Request.InputStream);
                if (string.IsNullOrEmpty(post))//没有这两个变量
                {
                    ret = webAPIFunc.GetRetString(ErrType.MissParam);
                    Response.Write(ret);
                    return;
                }
                post = post.Substring(0, post.Length - 1);
                byte[] rx       = StringsFunction.strToHexByte(post, "");
                byte[] DeviceID = new byte[4];
                byte[] SSID     = new byte[4];
                byte[] data     = null;
                if (rx.Length == (0x401 * 0x08))
                {
                    for (int i = 0; i < 4; i++)
                    {
                        DeviceID[i] = rx[i];
                        SSID[i]     = rx[4 + i];
                    }
                    data = new byte[(0x400 * 0x08)];
                    for (int i = 0; i < (0x400 * 0x08); i++)
                    {
                        data[i] = rx[8 + i];
                    }
                }
                else if (rx.Length == (0x801 * 0x08))
                {
                    for (int i = 0; i < 4; i++)
                    {
                        DeviceID[i] = rx[i];
                        SSID[i]     = rx[4 + i];
                    }
                    data = new byte[(0x800 * 0x08)];
                    for (int i = 0; i < (0x800 * 0x08); i++)
                    {
                        data[i] = rx[8 + i];
                    }
                }
                else
                {
                    webAPIFunc.GetRetString(ErrType.ErrFileLen);
                    Response.Write(ret);
                    return;
                }
                byte[]         txData      = GlobalFunc.Encrypt(data, DeviceID, SSID);
                string         strDeviceID = StringsFunction.byteToHexStr(DeviceID, "");
                string         strSSID     = StringsFunction.byteToHexStr(SSID, "");
                DeviceInfoData did         = DeviceInfoDataDBOption.Get(strDeviceID);
                if (did == null)
                {
                    ret = webAPIFunc.GetRetString(ErrType.NoRegDevice);
                    Response.Write(ret);
                    return;
                }
                else
                {
                    int ut = HPassWorkLogDataDBOption.GetUseTimes(strDeviceID);
                    if (ut > did.HPassTimes)
                    {
                        ret = webAPIFunc.GetRetString(ErrType.MaxUseTimes);
                        Response.Write(ret);
                        return;
                    }
                }
                int index = HPassWorkLogDataDBOption.GetIndex(strDeviceID, strSSID);
                index++;
                string            fileName = strDeviceID + strSSID + "_" + index.ToString() + ".txt";
                WFHttpWebResponse web      = new WFHttpWebResponse();
                HttpWebResponse   webRet   = web.CreateGetHttpResponse(LinuxServer);
                if (webRet == null)
                {
                    ret = webAPIFunc.GetRetString(ErrType.MissServer);
                    Response.Write(ret);
                    return;
                }
                webRet = web.CreatePostHttpResponse(LinuxServer + @"/login", "username=root&password=root");
                if (webRet == null)
                {
                    ret = webAPIFunc.GetRetString(ErrType.MissServer);
                    Response.Write(ret);
                    return;
                }
                webRet = web.CreateGetHttpResponse(LinuxServer + @"/search_m1_user");
                if (webRet == null)
                {
                    ret = webAPIFunc.GetRetString(ErrType.MissServer);
                    Response.Write(ret);
                    return;
                }
                HttpWebRequest request = null;
                request        = WebRequest.Create(LinuxServer + @"/m1_user_search_add") as HttpWebRequest;
                request.Method = "POST";
                string boundary = DateTime.Now.Ticks.ToString("x");
                //请求
                request.ContentType = "multipart/form-data; boundary=---------------------------" + boundary;

                request.CookieContainer = new CookieContainer();
                if (web.Cookies != null && web.Cookies.Count != 0)
                {
                    foreach (Cookie c in web.Cookies)
                    {
                        request.CookieContainer.Add(c);
                    }
                }

                //组织表单数据
                StringBuilder sb = new StringBuilder();
                sb.Append("-----------------------------" + boundary);
                sb.Append("\r\n");
                sb.Append("Content-Disposition: form-data; name=\"search_source\"; filename=\"" + fileName + "\"");
                sb.Append("\r\n");
                sb.Append("Content-Type: text/plain");
                sb.Append("\r\n\r\n");
                string head      = sb.ToString();
                byte[] form_data = Encoding.ASCII.GetBytes(head);
                //结尾
                byte[] foot_data = Encoding.ASCII.GetBytes("\r\n-----------------------------" + boundary + "--\r\n");
                //数据
                StringBuilder sb1 = new StringBuilder();
                if (rx.Length == (0x401 * 0x08))
                {
                    for (int i = 0; i < 0x400; i++)
                    {
                        sb1.Append(StringsFunction.byteToHexStr(txData, i * 8, 8, " "));
                        sb1.Append("\r\n");
                    }
                }
                else
                {
                    for (int i = 0; i < 0x800; i++)
                    {
                        sb1.Append(StringsFunction.byteToHexStr(txData, i * 8, 8, " "));
                        sb1.Append("\r\n");
                    }
                }
                sb1.Remove(sb1.Length - 2, 2);
                TextLog.AddTextLog(sb1.ToString(), Global.txtLogFolder + "HPassLog\\" + fileName, false);
                byte[] pBuf = Encoding.ASCII.GetBytes(sb1.ToString());
                //post总长度
                long length = form_data.Length + pBuf.Length + foot_data.Length;
                request.ContentLength = length;
                using (Stream requestStream = request.GetRequestStream())
                {
                    requestStream.Write(form_data, 0, form_data.Length);
                    //文件内容
                    requestStream.Write(pBuf, 0, pBuf.Length);
                    //结尾
                    requestStream.Write(foot_data, 0, foot_data.Length);
                }
                try
                {
                    HttpWebResponse fileResponse = request.GetResponse() as HttpWebResponse;
                    string          Content;
                    if (fileResponse.Headers["ContentEncoding"] != null)
                    {
                        Stream       receiveStream = fileResponse.GetResponseStream();
                        StreamReader sr            = new StreamReader(receiveStream, Encoding.GetEncoding(fileResponse.Headers["ContentEncoding"].ToString()));
                        Content = sr.ReadToEnd();
                    }
                    else
                    {
                        try
                        {
                            Stream       receiveStream = fileResponse.GetResponseStream();
                            StreamReader sr            = new StreamReader(receiveStream);
                            Content = sr.ReadToEnd();
                        }
                        catch
                        {
                        }
                    }
                    if (fileResponse.StatusCode == HttpStatusCode.OK)
                    {
                        ret = webAPIFunc.GetRetString(ErrType.retOK, fileName);
                        HPassWorkLogData hl = new HPassWorkLogData();
                        hl.DeviceID = strDeviceID;
                        hl.SSID     = strSSID;
                        hl.FileName = fileName;
                        hl.IP       = aspNetFunc.getIp();
                        HPassWorkLogDataDBOption.Insert(hl);
                        Response.Write(ret);
                        return;
                    }
                }
                catch (System.Exception ex)
                {
                    ret = webAPIFunc.GetRetString(ErrType.UnkownErr);
                    Response.Write(ret);
                    TextLog.AddTextLog("Add_updatafile:" + ex.Message, Global.txtLogFolder + "HPass.txt", true);
                    return;
                }
            }
            catch (System.Exception ex)
            {
                ret = webAPIFunc.GetRetString(ErrType.UnkownErr);
                TextLog.AddTextLog("Add_Unkown:" + ex.Message, Global.txtLogFolder + "HPass.txt", true);
            }
            Response.Write(ret);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            string FileName;
            string ret         = webAPIFunc.GetRetString(ErrType.UnkownErr);
            string LinuxServer = ConfigurationManager.AppSettings["LinuxServer"];

            try
            {
                FileName = Request.QueryString["FileName"];
                //信息|用户id|实验id,实验名,实验室;
                if (string.IsNullOrEmpty(FileName))//没有这两个变量
                {
                    ret = webAPIFunc.GetRetString(ErrType.MissParam);
                    Response.Write(ret);
                    return;
                }
                HPassWorkLogData hl = HPassWorkLogDataDBOption.GetByFileName(FileName);
                if (hl == null)
                {
                    ret = webAPIFunc.GetRetString(ErrType.ErrParam);
                    Response.Write(ret);
                    return;
                }
                WFHttpWebResponse web    = new WFHttpWebResponse();
                HttpWebResponse   webRet = web.CreateGetHttpResponse(LinuxServer);
                if (webRet == null)
                {
                    ret = webAPIFunc.GetRetString(ErrType.MissServer);
                    Response.Write(ret);
                    return;
                }
                webRet = web.CreatePostHttpResponse(LinuxServer + @"/login", "username=root&password=root");
                if (webRet == null)
                {
                    ret = webAPIFunc.GetRetString(ErrType.MissServer);
                    Response.Write(ret);
                    return;
                }
                webRet = web.CreateGetHttpResponse(LinuxServer + @"/m1_user_search_get_status");
                if (webRet == null)
                {
                    ret = webAPIFunc.GetRetString(ErrType.MissServer);
                    Response.Write(ret);
                    return;
                }
                m1_Status[] results = WFJSON.JsonDeserializeBySingleData <m1_Status[]>(web.Content);
                FileName = FileName + "_0";
                foreach (m1_Status m1 in results)
                {
                    if (m1.search_id == FileName)
                    {
                        if (m1.status == "inprogress")
                        {
                            if (m1.progress == 100)
                            {
                                string strResult = "";
                                if (m1.results != null)
                                {
                                    foreach (m1_result result in m1.results)
                                    {
                                        byte[] q  = StringsFunction.strToHexByte(result.query, " ");
                                        byte[] a  = StringsFunction.strToHexByte(result.answer, " ");
                                        string sq = StringsFunction.byteToHexStr(q, "");
                                        string sa = StringsFunction.byteToHexStr(a, "");
                                        strResult += sq + "-" + sa + "|";
                                    }
                                }
                                hl.eTime = DateTime.Now;
                                hl.Ret   = strResult;
                                HPassWorkLogDataDBOption.Update(hl);
                                ret = webAPIFunc.GetRetString(ErrType.retOK, strResult);
                                //ret = "1,100,"+strResult;
                                Response.Write(ret);
                                return;
                            }
                            else
                            {
                                ret = "2," + m1.progress.ToString();
                                Response.Write(ret);
                                return;
                            }
                        }
                        else if (m1.status == "pendding")
                        {
                            ret = "2,-1";
                            Response.Write(ret);
                            return;
                        }
                        else
                        {
                            ret = webAPIFunc.GetRetString(ErrType.ErrServerRet);
                            Response.Write(ret);
                            return;
                        }
                    }
                }
                ret = "3,";
                Response.Write(ret);
                return;
            }
            catch (System.Exception ex)
            {
                ret = webAPIFunc.GetRetString(ErrType.UnkownErr);
                TextLog.AddTextLog("Satus_Unkown:" + ex.Message, Global.txtLogFolder + "HPass.txt", true);
            }
            Response.Write(ret);
        }
Beispiel #8
0
        private void button2_Click(object sender, EventArgs e)
        {
            if (Form1.mcuClientContext == null)
            {
                MessageBox.Show("单片机采集板尚未接入,请稍后重试!!");
                return;
            }
            IPAddress mcuIP = CheckIPInput(textBox2.Text);

            if (mcuIP == null)
            {
                MessageBox.Show("单片机板ip输入有误");
                return;
            }

            IPAddress mcuSN = CheckIPInput(textBox3.Text);

            if (mcuSN == null)
            {
                MessageBox.Show("单片机板子网掩码输入有误");
                return;
            }

            IPAddress mcuGW = CheckIPInput(textBox4.Text);

            if (mcuGW == null)
            {
                MessageBox.Show("单片机板默认网关输入有误");
                return;
            }

            IPAddress pcIP = CheckIPInput(textBox5.Text);

            if (pcIP == null)
            {
                MessageBox.Show("服务器端ip输入有误");
                return;
            }
            byte[] mac = StringsFunction.strToHexByte(textBox6.Text, " ");
            if (mac.Length != 8)
            {
                MessageBox.Show("MAC输入有误");
                return;
            }
            tabControl1.Enabled = false;
            timer1.Enabled      = true;
            byte[] tx = new byte[36];
            for (int i = 0; i < 8; i++)
            {
                tx[i] = mac[i];
            }
            for (int i = 0; i < 4; i++)
            {
                tx[8 + i]      = mcuIP.GetAddressBytes()[i];
                tx[8 + 4 + i]  = mcuSN.GetAddressBytes()[i];
                tx[8 + 8 + i]  = mcuGW.GetAddressBytes()[i];
                tx[8 + 16 + i] = pcIP.GetAddressBytes()[i];
            }
            tx[28] = BytesOP.GetLowByte((ushort)numericUpDown2.Value);
            tx[29] = BytesOP.GetHighByte((ushort)numericUpDown2.Value);
            tx[30] = 0;
            tx[31] = 0;
            tx[32] = BytesOP.GetLowByte((ushort)numericUpDown1.Value);
            tx[33] = BytesOP.GetHighByte((ushort)numericUpDown1.Value);
            tx[34] = 0;
            tx[35] = 0;
            byte[] tx03 = CP1616_NoAddr_Packet.MakeCP1616_NoAddr_Packet(0x03, tx);
            tcpAsyncServer.Send(Form1.mcuClientContext, tx03);
            this.Invoke((EventHandler)(delegate
            {
                textBox1.AppendText(DateTime.Now.ToLongTimeString() + "   :   ");
                textBox1.AppendText("发送到" + Form1.mcuClientContext.clientEndPoint.ToString() + ":");
                textBox1.AppendText(WFNetLib.StringFunc.StringsFunction.byteToHexStr(tx03, " "));
                textBox1.AppendText("\r\n");
            }));
        }