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); } }
private void button1_Click(object sender, EventArgs e) { try { Random random = new Random(); random.NextBytes(pass); WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url; url = "http://localhost:11890/" + "AdminAPI/RegTE.aspx?ID=" + StringsFunction.byteToHexStr(HIDDevice.TheHIDDevice.HexID, ""); url = url + "&HexVer=20.02"; HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); string ret = WebResponse.Content; if (ret == "ok") { MessageBox.Show("注册成功"); } else if (ret == "reged") { MessageBox.Show("已经注册"); } else { MessageBox.Show("注册失败:" + ret); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public static bool RefreshAccessToken(DateTime dt) { lock (oLock) { if (dt < _access_token.GetData) { //已经更新过了 return(true); } WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=";//APPID&secret=APPSECRET"; url += appID; url += "&secret="; url += appsecret; HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(BaseJsonData)); MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(WebResponse.Content)); BaseJsonData calldata = (BaseJsonData)s.ReadObject(stream); if (calldata.access_token != null)//获取成功 { _access_token.GetData = DateTime.Now; _access_token.value = calldata.access_token; _access_token.expires_in = calldata.expires_in; } } return(true); }
public static void ClearHPassLogThread() { while (Global.bRun) { try { WFHttpWebResponse web = new WFHttpWebResponse(); web.CreateGetHttpResponse(@"http://192.168.0.158/"); web.CreatePostHttpResponse(@"http://192.168.0.158/login", "username=root&password=root"); HttpWebResponse hr = web.CreateGetHttpResponse(@"http://192.168.0.158/m1_user_search_get_status"); m1_Status[] ret = WFJSON.JsonDeserializeBySingleData <m1_Status[]>(web.Content); foreach (m1_Status m1 in ret) { m1.updatedAt = m1.updatedAt.Replace('T', ' '); m1.updatedAt = m1.updatedAt.Replace("Z", ""); DateTime dt = Convert.ToDateTime(m1.updatedAt); if (m1.progress == 100 && dt.AddMinutes(30) < DateTime.Now) { web.CreateGetHttpResponse(@"http://192.168.0.158/m1_search_user_remove?request_id=" + m1.id); } //http://192.168.0.158/m1_search_user_remove?request_id=484 } Thread.Sleep(30 * 60 * 1000); } catch (System.Exception ex) { TextLog.AddTextLog("Unkown:" + ex.Message, Global.txtLogFolder + "ClearHPassLog.txt", true); } } }
private void button2_Click(object sender, EventArgs e) { WFHttpWebResponse web = new WFHttpWebResponse(); web.CreateGetHttpResponse(@"http://192.168.0.158/"); web.CreatePostHttpResponse(@"http://192.168.0.158/login", "username=root&password=root"); HttpWebResponse hr = web.CreateGetHttpResponse(@"http://192.168.0.158/m1_user_search_get_status"); m1_Status[] ret = WFJSON.JsonDeserializeBySingleData <m1_Status[]>(web.Content); foreach (m1_Status m1 in ret) { web.CreateGetHttpResponse(@"http://192.168.0.158/m1_search_user_remove?request_id=" + m1.id); //http://192.168.0.158/m1_search_user_remove?request_id=484 } }
private void button6_Click(object sender, EventArgs e) { try { WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url; url = "http://localhost:11890/" + "webAPI/DPassStatus.aspx?DeviceID=0445615C"; url = url + "&serverid=" + serverid; HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); string ret = WebResponse.Content; MessageBox.Show(ret); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
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); }
public static string login() { WFHttpWebResponse web = new WFHttpWebResponse(); IDictionary <string, string> p = new Dictionary <string, string>(); p.Add("name", "HandsetMeter"); p.Add("password", "cewen///abc"); HttpWebResponse hr = web.CreatePostHttpResponse(strUrl + "login", p); JsonLoginReturn ret = JsonWork.GetJsonObject <JsonLoginReturn>(web.Content); if (ret.code == "200") { return(ret.session); } else { MessageBox.Show("登陆失败:" + ret.message); } return(""); }
public static string GetSerIP() { WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url = "https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token=";//APPID&secret=APPSECRET"; url += _access_token.value; HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(BaseJsonData)); MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(WebResponse.Content)); BaseJsonData calldata = (BaseJsonData)s.ReadObject(stream); if (calldata.ip_list != null)//获取成功 { return(calldata.ip_list); } else { return(null); } }
private void button5_Click(object sender, EventArgs e) { try { WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url; url = "http://localhost:11890/" + "webAPI/DPassAdd.aspx?DeviceID=051cdbd9"; url = url + "&pass="******""); textBox2.Text = url; HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); string ret = WebResponse.Content; MessageBox.Show(ret); if (ret.IndexOf("ok,id=") != -1) { serverid = ret.Substring("ok,id=".Length); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void checkForSoftUpdatesToolStripMenuItem2_Click(object sender, EventArgs e) { if (HIDDevice.TheHIDDevice == null) { toolStripStatusLabel3.Text = "No Device,Cann't Update"; MessageBox.Show("No Device,Cann't Update,Please insert the Device!!!"); return; } toolStripStatusLabel3.Text = "connecting to server for soft update"; System.Windows.Forms.Application.DoEvents(); WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url; url = "http://qc.iehlj.com/index.php?m=content&a=softupdate&device="; url += WFNetLib.Strings.StringsFunction.byteToHexStr(HIDDevice.TheHIDDevice.HexID, ""); url += "&version=V0"; //url += HIDDevice.SoftVersion.ToString("f2"); HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(JsonSoftData)); MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(WebResponse.Content)); JsonSoftData calldata = (JsonSoftData)s.ReadObject(stream); if (calldata.status == 0)//有更新 { float sersoft = float.Parse(calldata.to_version.Substring(1)); if (sersoft > svd.SoftVersion) { try { ProcessHelper.StartProcess("Update MKT.exe"); this.Close(); bClose = true; } catch// (System.Exception ex) { toolStripStatusLabel3.Text = "cannot find 'Update MKT.exe'"; if (bMessge) { MessageBox.Show("cannot find 'Update MKT.exe'!!!"); } } } else { svd.SetVerifyData_SoftUpdateTime(DateTime.Now); toolStripStatusLabel3.Text = "This is the latest soft version"; if (bMessge) { MessageBox.Show("This is the latest soft version!!"); } } } else { svd.SetVerifyData_SoftUpdateTime(DateTime.Now); toolStripStatusLabel3.Text = "This is the latest soft version"; if (bMessge) { MessageBox.Show("This is the latest soft version!!"); } } }
private void checkForDeviceUpdatesToolStripMenuItem1_Click(object sender, EventArgs e) { if (HIDDevice.TheHIDDevice == null) { toolStripStatusLabel3.Text = "No Device,Cann't Update"; MessageBox.Show("No Device,Cann't Update,Please insert the Device!!!"); return; } toolStripStatusLabel3.Text = "connecting to server for lic update"; System.Windows.Forms.Application.DoEvents(); WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url; url = "http://qc.iehlj.com/index.php?m=content&a=shouupdate&device="; url += WFNetLib.Strings.StringsFunction.byteToHexStr(HIDDevice.TheHIDDevice.HexID, ""); HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(JsonSoftData)); MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(WebResponse.Content)); JsonSoftData calldata = (JsonSoftData)s.ReadObject(stream); if (calldata.status == 0)//有更新 { DateTime licdt = DateTime.Parse(calldata.to_version); if (licdt.Date > svd.LicUpdateTime.Date || !File.Exists("Mercedes Key Tool.lic")) { //下载lic toolStripStatusLabel3.Text = "Updating for Lic"; progressBar1.Value = 0; progressBar1.Visible = true; System.Windows.Forms.Application.DoEvents(); //必须加注这句代码,否则label1将因为循环执行太快而来不及显示信息 float percent = 0; try { ProgressBar prog = progressBar1; string URL = calldata.fileurl; string filename = "Mercedes Key Tool.lic"; System.Net.HttpWebRequest Myrq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(URL); System.Net.HttpWebResponse myrp = (System.Net.HttpWebResponse)Myrq.GetResponse(); long totalBytes = myrp.ContentLength; if (prog != null) { prog.Maximum = (int)totalBytes; } System.IO.Stream st = myrp.GetResponseStream(); System.IO.Stream so = new System.IO.FileStream(filename, System.IO.FileMode.Create); long totalDownloadedByte = 0; byte[] by = new byte[1024]; int osize = st.Read(by, 0, (int)by.Length); while (osize > 0) { totalDownloadedByte = osize + totalDownloadedByte; System.Windows.Forms.Application.DoEvents(); so.Write(by, 0, osize); if (prog != null) { prog.Value = (int)totalDownloadedByte; } osize = st.Read(by, 0, (int)by.Length); percent = (float)totalDownloadedByte / (float)totalBytes * 100; toolStripStatusLabel3.Text = "Downloading for lic " + percent.ToString("f2") + "%"; System.Windows.Forms.Application.DoEvents(); //必须加注这句代码,否则label1将因为循环执行太快而来不及显示信息 } toolStripStatusLabel3.Text = "Download Lic OK!"; svd.SetVerifyData_LicUpdateTime(licdt); so.Close(); st.Close(); if (bMessge) { MessageBox.Show("Lic update completed!!"); } progressBar1.Visible = false; progressBar1.Value = 0; } catch (System.Exception ex) { if (bMessge) { MessageBox.Show(ex.Message); } toolStripStatusLabel3.Text = "Lic Update is error"; progressBar1.Visible = false; progressBar1.Value = 0; //throw; //break; } } else { toolStripStatusLabel3.Text = "This is the latest lic version"; //svd.SetVerifyData_LicUpdateTime(licdt); if (bMessge) { MessageBox.Show("This is the latest lic version"); } } } else { toolStripStatusLabel3.Text = "This is the latest lic version"; //svd.SetVerifyData_LicUpdateTime(DateTime.Now); if (bMessge) { MessageBox.Show("This is the latest lic version"); } } }
private void button2_Click(object sender, EventArgs e) { string session = JsonWork.login(); if (session == "") { return; } WFHttpWebResponse web = new WFHttpWebResponse(); IDictionary <string, string> p = new Dictionary <string, string>(); p.Add("session", session); p.Add("device_id", DeviceID.ToString()); HttpWebResponse hr = web.CreatePostHttpResponse(JsonWork.strUrl + "get_device_list", p); JsonAddrListReturn AddrList = JsonWork.GetJsonObject <JsonAddrListReturn>(web.Content); if (AddrList.code != "200") { MessageBox.Show("获取数据失败:" + AddrList.message); return; } enBT(false); // ExcelImport el = new ExcelImport(true, "安装位置"); // DataTable dt = el.ExcelImportProc_OleDB(); // if (dt == null || dt.Rows.Count < 100 || dt.Columns.Count < 2) // { // MessageBox.Show("地址数据文件格式有问题,请检查!"); // return; // } byte[] tx; byte[] temp; byte[] temp1; progressBar1.Maximum = AddrList.obj.list.Count; progressBar1.Value = 0; byte id; for (int i = 0; i < AddrList.obj.list.Count; i++) { Debug.WriteLine(AddrList.obj.list[i].id + "," + AddrList.obj.list[i].name); temp = Encoding.Default.GetBytes(AddrList.obj.list[i].name); if (!byte.TryParse(AddrList.obj.list[i].id, out id)) { continue; } if (id == 0) { continue; } id--; if (temp.Length > 20) { temp1 = new byte[23]; temp1[0] = id; temp1[1] = 21; temp1[22] = 0; for (int j = 0; j < 20; j++) { temp1[j + 2] = temp[j]; } tx = CP1616Packet.MakeCP1616Packet(3, 1, temp1); } else { temp1 = new byte[3 + temp.Length]; temp1[0] = id; temp1[1] = (byte)(temp.Length + 1); temp1[2 + temp.Length] = 0; for (int j = 0; j < temp.Length; j++) { temp1[j + 2] = temp[j]; } tx = CP1616Packet.MakeCP1616Packet(3, 1, temp1); } int retry = 20; Rx1616 = new CP1616Packet(3, 1); bool bOK = false; while (retry != 0) { WaitMS(100); try { COMPort1.Write(tx, 0, tx.Length); } catch { retry--; continue; } while (true) { try { if (Rx1616.DataPacketed((byte)COMPort1.ReadByte())) { bOK = true; break; } } catch { break; } } if (bOK) { progressBar1.Value++; break; } retry--; } if (retry == 0) { MessageBox.Show("第" + (i + 1).ToString() + "个传感器地址设置出错!"); break; } } MessageBox.Show("地址数据导入完成!"); enBT(true); }
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); }
public string POSTfile() { WFHttpWebResponse web = new WFHttpWebResponse(); web.CreateGetHttpResponse(@"http://chunyulee.vicp.net:44693/"); web.CreatePostHttpResponse(@"http://chunyulee.vicp.net:44693/login", "username=root&password=root"); web.CreateGetHttpResponse(@"http://chunyulee.vicp.net:44693/search_m1_user"); HttpWebRequest request = null; request = WebRequest.Create(@"http://chunyulee.vicp.net:44693/m1_user_search_add") as HttpWebRequest; request.Method = "POST"; string boundary = DateTime.Now.Ticks.ToString("x"); FileInfo f; OpenFileDialog openFileDialog1 = new OpenFileDialog(); if (openFileDialog1.ShowDialog() != DialogResult.OK) { return(null); } f = new FileInfo(openFileDialog1.FileName); Stream stream = File.OpenRead(f.FullName); byte[] pBuf = new byte[stream.Length]; stream.Read(pBuf, 0, (int)stream.Length); stream.Close(); //请求 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=\"" + f.Name + "\""); sb.Append("\r\n"); sb.Append("Content-Type: text/plain"); sb.Append("\r\n\r\n"); // sb.Append(ss); // sb.Append("\r\n"); // sb.Append("-----------------------------" + boundary + "--/r/n"); string head = sb.ToString(); byte[] form_data = Encoding.UTF8.GetBytes(head); //结尾 byte[] foot_data = Encoding.UTF8.GetBytes("\r\n-----------------------------" + boundary + "–-\r\n"); //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); } // Stream requestStream = req.GetRequestStream(); // //发送表单参数 // requestStream.Write(form_data, 0, form_data.Length); // //文件内容 // requestStream.Write(pBuf, 0, pBuf.Length); // //结尾 // requestStream.Write(foot_data, 0, foot_data.Length); // requestStream.Close(); HttpWebResponse Response = request.GetResponse() as HttpWebResponse; string Content; if (Response.Headers["ContentEncoding"] != null) { Stream receiveStream = Response.GetResponseStream(); StreamReader sr = new StreamReader(receiveStream, Encoding.GetEncoding(Response.Headers["ContentEncoding"].ToString())); Content = sr.ReadToEnd(); } else { try { Stream receiveStream = Response.GetResponseStream(); StreamReader sr = new StreamReader(receiveStream); Content = sr.ReadToEnd(); } catch { } } // // // // // //响应 // WebResponse pos = req.GetResponse(); // StreamReader sr = new StreamReader(pos.GetResponseStream(), Encoding.UTF8); // string html = sr.ReadToEnd().Trim(); // sr.Close(); // if (pos != null) // { // pos.Close(); // pos = null; // } // if (req != null) // { // req = null; // } // return html; return(null); }
private void button1_Click(object sender, EventArgs e) { web = new WFHttpWebResponse(); HttpWebResponse ret = web.CreatePostHttpResponse(); }
private void checkForDeviceUpdatesToolStripMenuItem_Click(object sender, EventArgs e) { if (HIDDevice.TheHIDDevice == null) { toolStripStatusLabel3.Text = "No Device,Cann't Update"; MessageBox.Show("No Device,Cann't Update,Please insert the Device!!!"); return; } toolStripStatusLabel3.Text = "connecting to server for device update"; System.Windows.Forms.Application.DoEvents(); WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url; url = "http://qc.iehlj.com/index.php?m=content&a=yingupdate&device="; url += WFNetLib.Strings.StringsFunction.byteToHexStr(HIDDevice.TheHIDDevice.HexID, ""); HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(JsonSoftData)); MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(WebResponse.Content)); JsonSoftData calldata = (JsonSoftData)s.ReadObject(stream); if (calldata.status == 0)//有更新 { string strcurBin = HIDDevice.TheHIDDevice.HexVer[0].ToString("X2") + "." + HIDDevice.TheHIDDevice.HexVer[1].ToString("X2"); float serBin = float.Parse(calldata.to_version.Substring(1)); float curBin = float.Parse(strcurBin); if (serBin > curBin) { //下载lic toolStripStatusLabel3.Text = "Updating for Device"; progressBar1.Value = 0; progressBar1.Visible = true; System.Windows.Forms.Application.DoEvents(); //必须加注这句代码,否则label1将因为循环执行太快而来不及显示信息 float percent = 0; try { string URL = calldata.fileurl; //string filename = "123.lic"; System.Net.HttpWebRequest Myrq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(URL); System.Net.HttpWebResponse myrp = (System.Net.HttpWebResponse)Myrq.GetResponse(); long totalBytes = myrp.ContentLength; byte[] theBIN = new byte[totalBytes]; long BINOffset = 0; System.IO.Stream st = myrp.GetResponseStream(); //System.IO.Stream so = new System.IO.FileStream("123.bin", System.IO.FileMode.Create); long totalDownloadedByte = 0; byte[] by = new byte[1024]; int osize = st.Read(by, 0, (int)by.Length); while (osize > 0) { totalDownloadedByte = osize + totalDownloadedByte; System.Windows.Forms.Application.DoEvents(); //so.Write(by, 0, osize); for (int i = 0; i < osize; i++) { theBIN[BINOffset++] = by[i]; } osize = st.Read(by, 0, (int)by.Length); percent = (float)totalDownloadedByte / (float)totalBytes * 100; progressBar1.Value = (int)(percent); toolStripStatusLabel3.Text = "Download for device " + percent.ToString("f2") + "%"; System.Windows.Forms.Application.DoEvents(); //必须加注这句代码,否则label1将因为循环执行太快而来不及显示信息 } toolStripStatusLabel3.Text = "Download device OK,wait for update device..."; System.Windows.Forms.Application.DoEvents(); //so.Close(); st.Close(); WFGlobal.WaitMS(2000); UpdateDevice(theBIN); progressBar1.Visible = false; progressBar1.Value = 0; } catch (System.Exception ex) { if (bMessge) { MessageBox.Show(ex.Message); } toolStripStatusLabel3.Text = "Device Update is error"; progressBar1.Visible = false; progressBar1.Value = 0; //throw; //break; } } else { svd.SetVerifyData_BINUpdateTime(DateTime.Now); if (bMessge) { MessageBox.Show("This is the latest Device version"); } toolStripStatusLabel3.Text = "This is the latest Device version"; } } else { toolStripStatusLabel3.Text = "This is the latest Device version"; if (bMessge) { MessageBox.Show("This is the latest Device version"); } svd.SetVerifyData_BINUpdateTime(DateTime.Now); } }
private void button1_Click_1(object sender, EventArgs e) { if (radioButton1.Checked)//当前数据 { Rx1616 = new CP1616Packet(4, 1); byte[] tx = CP1616Packet.MakeCP1616Packet(4, 1, 1); COMPort1.Write(tx, 0, tx.Length); while (true) { try { if (Rx1616.DataPacketed((byte)COMPort1.ReadByte())) { string session = JsonWork.login(); if (session == "") { return; } JsonTempDataList jsonTempDataList = new JsonTempDataList(); jsonTempDataList.list = new List <JsonTempData>(); for (int i = 0; i < 100; i++) { JsonTempData jtd = new JsonTempData(); jtd.cid = i.ToString(); if (Rx1616.Data[i * 27 + 21] == 0xff) { continue; } else { jtd.date = Rx1616.Data[i * 27 + 21].ToString("D02") + "-" + Rx1616.Data[i * 27 + 22].ToString("D02") + " " + Rx1616.Data[i * 27 + 23].ToString("D02") + ":" + Rx1616.Data[i * 27 + 24].ToString("D02"); jtd.temperature = ((BytesOP.MakeShort(Rx1616.Data[i * 27 + 26], Rx1616.Data[i * 27 + 25])) * 0.0625 + 0.5).ToString("f1"); } jsonTempDataList.list.Add(jtd); } WFHttpWebResponse web = new WFHttpWebResponse(); IDictionary <string, string> p = new Dictionary <string, string>(); p.Add("temperature_list", JsonWork.GetJsonString <JsonTempDataList>(jsonTempDataList)); p.Add("session", session); p.Add("device_id", Form1.DeviceID.ToString()); HttpWebResponse hr = web.CreatePostHttpResponse(JsonWork.strUrl + "post_temperature_list", p); JsonAddrListReturn AddrList = JsonWork.GetJsonObject <JsonAddrListReturn>(web.Content); if (AddrList.code != "200") { MessageBox.Show("数据导出失败:" + AddrList.message); return; } else { MessageBox.Show("数据导出成功"); return; } break; } } catch { MessageBox.Show("数据导出失败"); break; } } } else if (radioButton2.Checked) { hl = new List <byte[]>(); se = new List <byte>(); er = new List <byte>(); progressBar1.Value = 0; int retry; bool bOK; for (int i = 0; i < 100; i++) { retry = 20; bOK = false; while (retry != 0) { Rx1616 = new CP1616Packet(5, 1); byte[] tx = CP1616Packet.MakeCP1616Packet(5, 1, (byte)i); try { COMPort1.Write(tx, 0, tx.Length); } catch { retry--; continue; } while (true) { try { if (Rx1616.DataPacketed((byte)COMPort1.ReadByte())) { // byte[] temp = new byte[Rx1616.Data.Length - 2]; // for (int j = 0; j < Rx1616.Data.Length - 2; j++) // { // temp[j] // } hl.Add(Rx1616.Data); se.Add((byte)(i + 1)); progressBar1.Value++; Thread.Sleep(100); bOK = true; break; } } catch { break; } } if (bOK) { break; } retry--; Thread.Sleep(1000); } if (retry == 0) { er.Add((byte)(i + 1)); } } if (se.Count != 0) { if (er.Count != 0) { string str = "如下传感器数据读取失败:\r\n"; for (int i = 0; i < er.Count; i++) { str += "第" + er[i].ToString() + "号传感器" + "\r\n"; } str += "是否继续导出"; if (MessageBox.Show(str, "读取错误", MessageBoxButtons.YesNo) == DialogResult.No) { return; } } string session = JsonWork.login(); if (session == "") { return; } JsonTempDataList jsonTempDataList = new JsonTempDataList(); jsonTempDataList.list = new List <JsonTempData>(); for (int i = 0; i < se.Count; i++) { int ix1 = 21; while ((ix1 + 6) < hl[i].Length) { JsonTempData jtd = new JsonTempData(); jtd.cid = se[i].ToString(); jtd.date = hl[i][ix1].ToString("D02") + "-" + hl[i][ix1 + 1].ToString("D02") + " " + hl[i][ix1 + 2].ToString("D02") + ":" + hl[i][ix1 + 3].ToString("D02"); ushort t = BytesOP.MakeShort(hl[i][ix1 + 5], hl[i][ix1 + 4]); if (t == 0xffff) { jtd.temperature = "-100"; } else { jtd.temperature = ((t) * 0.0625 + 0.5).ToString("f1"); } jsonTempDataList.list.Add(jtd); ix1 += 6; } } WFHttpWebResponse web = new WFHttpWebResponse(); IDictionary <string, string> p = new Dictionary <string, string>(); p.Add("temperature_list", JsonWork.GetJsonString <JsonTempDataList>(jsonTempDataList)); p.Add("session", session); p.Add("device_id", Form1.DeviceID.ToString()); HttpWebResponse hr = web.CreatePostHttpResponse(JsonWork.strUrl + "post_temperature_list", p); JsonAddrListReturn AddrList = JsonWork.GetJsonObject <JsonAddrListReturn>(web.Content); if (AddrList.code != "200") { MessageBox.Show("数据导出失败:" + AddrList.message); return; } else { MessageBox.Show("数据导出成功"); return; } // ee = new ExcelExport(); // ee.SheetCount = se.Count; // ee.ExcelWorkbookCallbackProc = new ExcelExport.ExcelWorkbookCallback(ExcelWorkbookCallbackProc1); // ee.ExcelExportProc1(); } else { MessageBox.Show("读取历史数据失败"); } } else if (radioButton3.Checked) { if (numericUpDown2.Value < numericUpDown1.Value) { MessageBox.Show("范围有误"); return; } hl = new List <byte[]>(); se = new List <byte>(); er = new List <byte>(); progressBar1.Value = 0; int per = (int)(numericUpDown2.Value - numericUpDown1.Value + 1); per = 100 / per; int retry; bool bOK; for (int i = (int)(numericUpDown1.Value - 1); i < (int)numericUpDown2.Value; i++) { retry = 20; bOK = false; while (retry != 0) { Rx1616 = new CP1616Packet(5, 1); byte[] tx = CP1616Packet.MakeCP1616Packet(5, 1, (byte)i); try { COMPort1.Write(tx, 0, tx.Length); } catch { retry--; continue; } while (true) { try { if (Rx1616.DataPacketed((byte)COMPort1.ReadByte())) { // byte[] temp = new byte[Rx1616.Data.Length - 2]; // for (int j = 0; j < Rx1616.Data.Length - 2; j++) // { // temp[j] // } hl.Add(Rx1616.Data); se.Add((byte)(i + 1)); progressBar1.Value += per; Thread.Sleep(100); bOK = true; break; } } catch { break; } } if (bOK) { break; } retry--; Thread.Sleep(1000); } if (retry == 0) { er.Add((byte)(i + 1)); } } progressBar1.Value = 100; if (se.Count != 0) { if (er.Count != 0) { string str = "如下传感器数据读取失败:\r\n"; for (int i = 0; i < er.Count; i++) { str += "第" + er[i].ToString() + "号传感器" + "\r\n"; } str += "是否继续导出"; if (MessageBox.Show(str, "读取错误", MessageBoxButtons.YesNo) == DialogResult.No) { return; } } string session = JsonWork.login(); if (session == "") { return; } JsonTempDataList jsonTempDataList = new JsonTempDataList(); jsonTempDataList.list = new List <JsonTempData>(); for (int i = 0; i < se.Count; i++) { int ix1 = 21; while ((ix1 + 6) < hl[i].Length) { JsonTempData jtd = new JsonTempData(); jtd.cid = se[i].ToString(); jtd.date = hl[i][ix1].ToString("D02") + "-" + hl[i][ix1 + 1].ToString("D02") + " " + hl[i][ix1 + 2].ToString("D02") + ":" + hl[i][ix1 + 3].ToString("D02"); ushort t = BytesOP.MakeShort(hl[i][ix1 + 5], hl[i][ix1 + 4]); if (t == 0xffff) { jtd.temperature = "-100"; } else { jtd.temperature = ((t) * 0.0625 + 0.5).ToString("f1"); } jsonTempDataList.list.Add(jtd); ix1 += 6; } } WFHttpWebResponse web = new WFHttpWebResponse(); IDictionary <string, string> p = new Dictionary <string, string>(); p.Add("temperature_list", JsonWork.GetJsonString <JsonTempDataList>(jsonTempDataList)); p.Add("session", session); p.Add("device_id", Form1.DeviceID.ToString()); HttpWebResponse hr = web.CreatePostHttpResponse(JsonWork.strUrl + "post_temperature_list", p); JsonAddrListReturn AddrList = JsonWork.GetJsonObject <JsonAddrListReturn>(web.Content); if (AddrList.code != "200") { MessageBox.Show("数据导出失败:" + AddrList.message); return; } else { MessageBox.Show("数据导出成功"); return; } // ee = new ExcelExport(); // ee.SheetCount = se.Count; // ee.ExcelWorkbookCallbackProc = new ExcelExport.ExcelWorkbookCallback(ExcelWorkbookCallbackProc1); // ee.ExcelExportProc1(); } else { MessageBox.Show("读取历史数据失败"); } } }
void licupdate() { label1.Text = "connecting to server for lic update"; System.Windows.Forms.Application.DoEvents(); WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url; url = "http://qc.iehlj.com/index.php?m=content&a=shouupdate&device="; url += WFNetLib.Strings.StringsFunction.byteToHexStr(HIDDevice.TheHIDDevice.HexID, ""); HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(JsonSoftData)); MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(WebResponse.Content)); JsonSoftData calldata = (JsonSoftData)s.ReadObject(stream); if (calldata.status == 0)//有更新 { DateTime licdt = DateTime.Parse(calldata.to_version); if (licdt.Date > svd.LicUpdateTime.Date || !File.Exists("Mercedes Key Tool.lic")) { label1.Text = "Updating for lic to " + calldata.to_version; progressBar1.Value = 0; System.Windows.Forms.Application.DoEvents(); //必须加注这句代码,否则label1将因为循环执行太快而来不及显示信息 float percent = 0; try { string URL = calldata.fileurl; string filename = "Mercedes Key Tool.lic"; System.Net.HttpWebRequest Myrq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(URL); System.Net.HttpWebResponse myrp = (System.Net.HttpWebResponse)Myrq.GetResponse(); long totalBytes = myrp.ContentLength; System.IO.Stream st = myrp.GetResponseStream(); System.IO.Stream so = new System.IO.FileStream(filename, System.IO.FileMode.Create); long totalDownloadedByte = 0; byte[] by = new byte[1024]; int osize = st.Read(by, 0, (int)by.Length); while (osize > 0) { totalDownloadedByte = osize + totalDownloadedByte; System.Windows.Forms.Application.DoEvents(); so.Write(by, 0, osize); osize = st.Read(by, 0, (int)by.Length); percent = (float)totalDownloadedByte / (float)totalBytes * 100; label2.Text = "Download " + percent.ToString("f2") + "%"; progressBar1.Value = (int)percent; System.Windows.Forms.Application.DoEvents(); //必须加注这句代码,否则label1将因为循环执行太快而来不及显示信息 } label2.Text = "Download completed"; svd.SetVerifyData_LicUpdateTime(licdt); so.Close(); st.Close(); WFNetLib.WFGlobal.WaitMS(3000); } catch (System.Exception ex) { label1.Text = "Update for lic is error :" + ex.Message; System.Windows.Forms.Application.DoEvents(); } } } else { label1.Text = "This is the latest lic version---" + calldata.to_version; //svd.SetVerifyData_LicUpdateTime(DateTime.Now); } }
void softupdate() { label1.Text = "connecting to server for soft update"; System.Windows.Forms.Application.DoEvents(); WFHttpWebResponse WebResponse = new WFHttpWebResponse(); string url; url = "http://qc.iehlj.com/index.php?m=content&a=softupdate&device="; url += WFNetLib.Strings.StringsFunction.byteToHexStr(HIDDevice.TheHIDDevice.HexID, ""); url += "&version=V0"; //url += svd.SoftVersion.ToString("f2"); HttpWebResponse hr = WebResponse.CreateGetHttpResponse(url); DataContractJsonSerializer s = new DataContractJsonSerializer(typeof(JsonSoftData)); MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(WebResponse.Content)); JsonSoftData calldata = (JsonSoftData)s.ReadObject(stream); if (calldata.status == 0)//有更新 { //if(MessageBox.Show("是否更新到最新版本"+calldata.to_version),"是否更新") float sersoft = float.Parse(calldata.to_version.Substring(1)); if (sersoft > svd.SoftVersion || !File.Exists("Mercedes Key Tool.exe")) { if (ProcessHelper.IsRunningProcess("Mercedes Key Tool")) { // if (MessageBox.Show("是否更新到最新版本" + calldata.to_version, "是否更新", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes) // { // // } ProcessHelper.CloseProcess("Mercedes Key Tool"); } label1.Text = "Soft updating to " + calldata.to_version; System.Windows.Forms.Application.DoEvents(); //必须加注这句代码,否则label1将因为循环执行太快而来不及显示信息 float percent = 0; try { //ProgressBar prog = progressBar1; string URL = calldata.fileurl; string filename = "Mercedes Key Tool.exe"; System.Net.HttpWebRequest Myrq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(URL); System.Net.HttpWebResponse myrp = (System.Net.HttpWebResponse)Myrq.GetResponse(); long totalBytes = myrp.ContentLength; System.IO.Stream st = myrp.GetResponseStream(); System.IO.Stream so = new System.IO.FileStream(filename, System.IO.FileMode.Create); long totalDownloadedByte = 0; byte[] by = new byte[1024]; int osize = st.Read(by, 0, (int)by.Length); while (osize > 0) { totalDownloadedByte = osize + totalDownloadedByte; System.Windows.Forms.Application.DoEvents(); so.Write(by, 0, osize); osize = st.Read(by, 0, (int)by.Length); percent = (float)totalDownloadedByte / (float)totalBytes * 100; progressBar1.Value = (int)percent; label2.Text = "Download " + percent.ToString("f2") + "%"; System.Windows.Forms.Application.DoEvents(); //必须加注这句代码,否则label1将因为循环执行太快而来不及显示信息 } progressBar1.Value = 100; label2.Text = "Download completed"; System.Windows.Forms.Application.DoEvents(); WFNetLib.WFGlobal.WaitMS(2000); svd.SetVerifyData_SoftUpdateTime(DateTime.Now); so.Close(); st.Close(); bsoftupdate = true; } catch (System.Exception) { throw; //break; } } else { label1.Text = "This is the latest soft version---V" + svd.SoftVersion.ToString("f2"); svd.SetVerifyData_SoftUpdateTime(DateTime.Now); } } else { label1.Text = "This is the latest soft version---V" + svd.SoftVersion.ToString("f2"); svd.SetVerifyData_SoftUpdateTime(DateTime.Now); } }
private void button10_Click(object sender, EventArgs e) { FileInfo f; OpenFileDialog openFileDialog1 = new OpenFileDialog(); if (openFileDialog1.ShowDialog() != DialogResult.OK) { return; } f = new FileInfo(openFileDialog1.FileName); Stream stream = File.OpenRead(f.FullName); byte[] pBuf = new byte[stream.Length]; stream.Read(pBuf, 0, (int)stream.Length); stream.Close(); WFHttpWebResponse web = new WFHttpWebResponse(); HttpWebResponse webRet = web.CreateGetHttpResponse(@"http://chunyulee.vicp.net:44693/"); web.CreatePostHttpResponse(@"http://chunyulee.vicp.net:44693/login", "username=root&password=root"); int file = 30; string filename = "wf_Test_"; while (file != 0) { file--; web.CreateGetHttpResponse(@"http://chunyulee.vicp.net:44693/search_m1_user"); HttpWebRequest request = null; request = WebRequest.Create(@"http://chunyulee.vicp.net:44693/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 + file.ToString() + ".txt\""); sb.Append("\r\n"); sb.Append("Content-Type: text/plain"); sb.Append("\r\n\r\n"); // sb.Append(ss); // sb.Append("\r\n"); // sb.Append("-----------------------------" + boundary + "--/r/n"); string head = sb.ToString(); byte[] form_data = Encoding.ASCII.GetBytes(head); //结尾 byte[] foot_data = Encoding.ASCII.GetBytes("\r\n-----------------------------" + boundary + "--\r\n"); //post总长度 long length = form_data.Length + pBuf.Length + foot_data.Length; request.ContentLength = length; using (Stream requestStream = request.GetRequestStream()) { textBox3.Clear(); requestStream.Write(form_data, 0, form_data.Length); string str = Encoding.ASCII.GetString(form_data); textBox3.AppendText(Encoding.ASCII.GetString(form_data)); //文件内容 requestStream.Write(pBuf, 0, pBuf.Length); str = Encoding.ASCII.GetString(pBuf); textBox3.AppendText(Encoding.ASCII.GetString(pBuf)); //结尾 requestStream.Write(foot_data, 0, foot_data.Length); str = Encoding.ASCII.GetString(foot_data); textBox3.AppendText(Encoding.ASCII.GetString(foot_data)); } // Stream requestStream = req.GetRequestStream(); // //发送表单参数 // requestStream.Write(form_data, 0, form_data.Length); // //文件内容 // requestStream.Write(pBuf, 0, pBuf.Length); // //结尾 // requestStream.Write(foot_data, 0, foot_data.Length); // requestStream.Close(); try { HttpWebResponse Response = request.GetResponse() as HttpWebResponse; string Content; if (Response.Headers["ContentEncoding"] != null) { Stream receiveStream = Response.GetResponseStream(); StreamReader sr = new StreamReader(receiveStream, Encoding.GetEncoding(Response.Headers["ContentEncoding"].ToString())); Content = sr.ReadToEnd(); } else { try { Stream receiveStream = Response.GetResponseStream(); StreamReader sr = new StreamReader(receiveStream); Content = sr.ReadToEnd(); } catch { } } HttpWebResponse hr = web.CreateGetHttpResponse(@"http://chunyulee.vicp.net:44693/m1_user_search_get_status"); //m1_Status[] ret = WFJSON.JsonDeserializeBySingleData<m1_Status[]>(web.Content); } catch (System.Exception ex) { Debug.WriteLine(ex.Message); } //Thread.Sleep(60000); } m1_Status[] ret = WFJSON.JsonDeserializeBySingleData <m1_Status[]>(web.Content); }