/// <summary> /// 下载文件按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void barButtonItem14_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { GC.Collect(); #region 请求头配置 info = CreateHttp(); #endregion xtraTabPage3.Controls.Clear(); String checkurl = ".+\\..+"; if (String.IsNullOrEmpty(textEdit1.Text)) { Form4 form4 = new Form4("错误:请求地址不合法"); form4.Text = "错误"; form4.ShowDialog(); barStaticItem1.Caption = "当前状态:取消文件下载"; return; } if (!RegexMethod.CheckRegex(checkurl, textEdit1.Text)) { Form5 form5 = new Form5("警告:未检测到常规格式的下载地址,是否继续"); form5.Text = "警告"; form5.ShowDialog(); if (form5.DialogResult == DialogResult.Cancel) { barStaticItem1.Caption = "当前状态:取消文件下载"; return; } } SaveFileDialog sf = new SaveFileDialog(); var arr = textEdit1.Text.Split('/'); String filename = arr[arr.Length - 1]; String type = "*"; String name = filename; if (filename.Contains(".")) { type = filename.Split('.')[1]; name = filename.Split('.')[0]; } else { Form4 form4 = new Form4(""); form4.Text = "自定义文件后缀"; form4.ShowDialog(); type = form4.filter; } String filter = String.Format("{0}(*.{0})|*.{0}|所有文件(*.*)|*.*", type, type, type); sf.Filter = filter;//可以保存的格式 sf.FileName = arr[arr.Length - 1]; if (sf.ShowDialog() == System.Windows.Forms.DialogResult.OK) { if (HttpMethod.DownLoadFile_ABPath(info, sf.FileName)) { Form4 form4 = new Form4("成功:下载成功"); form4.Text = "成功"; form4.ShowDialog(); } else { Form4 form4 = new Form4("失败:下载失败"); form4.Text = "失败"; form4.ShowDialog(); } } barStaticItem1.Caption = "当前状态:完毕"; }
/// <summary> /// 下载图片按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void barButtonItem12_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { GC.Collect(); xtraTabPage3.Controls.Clear(); String checkurl = ".+\\..+"; if (String.IsNullOrEmpty(textEdit1.Text)) { Form4 form4 = new Form4("错误:请求地址不合法"); form4.Text = "错误"; form4.ShowDialog(); barStaticItem1.Caption = "当前状态:取消图片请求"; return; } if (!RegexMethod.CheckRegex(checkurl, textEdit1.Text)) { Form5 form5 = new Form5("警告:未检测到常规格式的下载地址,是否继续"); form5.Text = "警告"; form5.ShowDialog(); if (form5.DialogResult == DialogResult.Cancel) { barStaticItem1.Caption = "当前状态:取消图片下载"; return; } } barStaticItem1.Caption = "下载图片:" + Path.GetFileName(textEdit1.Text); xtraTabPage1.Controls.Clear(); xtraTabPage2.Controls.Clear(); html = String.Empty; Jhtml = String.Empty; #region 请求头配置 info = CreateHttp(); #endregion try { Image img = HttpMethod.DownPic(info); if (img == null) { Form4 form4 = new Form4("失败:下载失败"); form4.Text = "失败"; form4.ShowDialog(); return; } PictureEdit pictureEdit = new PictureEdit(); pictureEdit.Dock = DockStyle.Fill; pictureEdit.Image = img; xtraTabPage3.Controls.Add(pictureEdit); } catch { Form4 form4 = new Form4("程序错误:请联系程序员!"); form4.Text = "错误"; form4.ShowDialog(); } barStaticItem1.Caption = "下载图片:" + Path.GetFileName(textEdit1.Text) + "完毕"; tabPane1.SelectedPage = tabNavigationPage2; }
/// <summary> /// 保存配置按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { String newpath = String.Empty; if (!Directory.Exists(path)) { Directory.CreateDirectory(path); File.SetAttributes(path, FileAttributes.Hidden); } if (!String.IsNullOrEmpty(textEdit1.Text)) { if (!textEdit1.Text.Contains("http")) { Form4 form4 = new Form4("错误:RequestUrl格式错误"); form4.Text = "错误"; form4.ShowDialog(); return; } Form6 form6 = new Form6(); form6.Text = "保存配置"; form6.pathname = String.IsNullOrEmpty(textEdit1.Text) ? textEdit1.Text : String.Empty; form6.ShowDialog(); if (form6.DialogResult == DialogResult.OK) { newpath = form6.pathname; } if (form6.DialogResult == DialogResult.Cancel) { return; } if (form6.DialogResult == DialogResult.No) { Form4 form4 = new Form4("错误:程序错误,请联系程序员"); form4.Text = "错误"; form4.ShowDialog(); return; } if (!newpath.Contains(path + "\\")) { newpath = path + "/" + newpath + ".txt"; } try { using (StreamWriter sw = new StreamWriter(newpath)) { if (HeadDic.Count > 0) { foreach (var dic in HeadDic) { sw.WriteLine(dic.Key + "----" + dic.Value); } } sw.WriteLine("RequestUrl----" + textEdit1.Text); sw.WriteLine("PostData----" + richEditControl1.Text); sw.WriteLine("User-Agent----" + textEdit2.Text); sw.WriteLine("Referer----" + textEdit4.Text); sw.WriteLine("Content-Type----" + textEdit3.Text); sw.WriteLine("Accept----" + textEdit5.Text); sw.WriteLine("Accept-Enconding----" + textEdit6.Text); sw.WriteLine("Encoding----" + textEdit8.Text); sw.Write("Cookie----" + richEditControl2.Text); } Form4 form4 = new Form4("成功:保存成功!"); form4.Text = "成功"; form4.ShowDialog(); } catch { Form4 form4 = new Form4("失败:程序错误,请联系程序员"); form4.Text = "失败"; form4.ShowDialog(); } } else { Form4 form4 = new Form4("错误:RequestUrl不能为空"); form4.Text = "错误"; form4.ShowDialog(); return; } barStaticItem1.Caption = "当前状态:保存配置完毕"; }
/// <summary> /// 请求按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void barButtonItem2_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { GC.Collect(); #region 请求前检查 if (String.IsNullOrEmpty(textEdit1.Text)) { Form4 form4 = new Form4("错误:请求地址不合法"); form4.Text = "错误"; form4.ShowDialog(); return; } #endregion #region 清空上次请求内容 xtraTabPage1.Controls.Clear(); xtraTabPage2.Controls.Clear(); xtraTabPage3.Controls.Clear(); html = String.Empty; Jhtml = String.Empty; #endregion #region 状态显示 barStaticItem1.Caption = String.Format("当前状态:以{0}方式{1}请求本链接", String.IsNullOrEmpty(richEditControl1.Text) ? "GET" : "POST", thread_flag ? "并发" : "普通"); #endregion #region 配置请求头 info = CreateHttp(); #endregion if (!thread_flag) { //发送请求 html = HttpMethod.HttpWork(ref info); //显示 RichEditControl control1 = new RichEditControl(); control1.Text = "Ret-Cookie:" + info.Cookie.ConventToString() + "\n" + html; control1.ActiveViewType = RichEditViewType.Simple; control1.Dock = DockStyle.Fill; control1.ReadOnly = true; xtraTabPage3.Controls.Add(control1); //渲染 EWebBrowser browser = new EWebBrowser(); browser.DocumentText = html; browser.Dock = DockStyle.Fill; xtraTabPage1.Controls.Add(browser); RichEditControl control2 = new RichEditControl(); if (EWebBrowser.WaitWebPageLoad(browser)) { Jhtml = browser.Document.Body.OuterHtml; } control2.Text = Jhtml; control2.ActiveViewType = RichEditViewType.Simple; control2.Dock = DockStyle.Fill; control2.ReadOnly = true; xtraTabPage2.Controls.Add(control2); barStaticItem1.Caption = String.Format("当前状态:以{0}方式{1}请求完毕", String.IsNullOrEmpty(richEditControl1.Text) ? "GET" : "POST", thread_flag ? "并发" : "普通"); } else { barButtonItem1.Enabled = false; barButtonItem2.Enabled = false; barButtonItem12.Enabled = false; barButtonItem14.Enabled = false; barButtonItem4.Enabled = false; barButtonItem3.Enabled = false; //box1 = new RichTextBox(); //box1.Dock = DockStyle.Fill; //box1.SelectionStart = box1.Text.Length; //box1.SelectionLength = 0; //xtraTabPage3.Controls.Add(box1); control = new RichEditControl(); control.Dock = DockStyle.Fill; control.ReadOnly = true; control.ActiveViewType = RichEditViewType.Simple; xtraTabPage3.Controls.Add(control); ConfigFinishFunc(); } tabPane1.SelectedPage = tabNavigationPage2; }
private void simpleButton1_Click(object sender, EventArgs e) { //Form1 form1 = new Form1(); string key = string.Empty; if (!checkEdit1.Checked) { switch (comboBoxEdit1.SelectedIndex) { case 0: key = "X-FOR-WITH"; break; case 1: key = "Host"; break; case 2: key = "ProtocolVersion"; break; case 3: key = "proxy"; break; } if (comboBoxEdit1.SelectedIndex == 0) { if (String.IsNullOrEmpty(textEdit1.Text)) { Form4 form4 = new Form4("警告:请填写X-FOR-WITH的Value值"); form4.Text = "警告"; form4.ShowDialog(); return; } if (Form1.HeadDic.TryAdd(key, textEdit1.Text)) { } else { Form4 form4 = new Form4("错误:Key已存在"); form4.Text = "错误"; form4.ShowDialog(); } } if (comboBoxEdit1.SelectedIndex == 1) { if (String.IsNullOrEmpty(textEdit1.Text)) { Form4 form4 = new Form4("警告:请填写Host的Value值"); form4.Text = "警告"; form4.ShowDialog(); return; } if (Form1.HeadDic.TryAdd(key, textEdit1.Text)) { } else { Form4 form4 = new Form4("错误:Key已存在"); form4.Text = "错误"; form4.ShowDialog(); } } if (comboBoxEdit1.SelectedIndex == 2) { if (textEdit1.Text == "1.1") { if (Form1.HeadDic.TryAdd(key, "1.1")) { } else { Form4 form4 = new Form4("错误:Key已存在"); form4.Text = "错误"; form4.ShowDialog(); } } else { if (Form1.HeadDic.TryAdd(key, "1.0")) { } else { Form4 form4 = new Form4("错误:Key已存在"); form4.Text = "错误"; form4.ShowDialog(); } } } if (comboBoxEdit1.SelectedIndex == 3) { string str = RegexMethod.GetSingleResult("[0-9]+?.[0-9]+?.[0-9]+?.[0-9]+?:[0-9]+", textEdit1.Text); if (String.IsNullOrEmpty(textEdit1.Text) || String.IsNullOrEmpty(str)) { Form4 form4 = new Form4("警告:请按指定格式填写Proxy的Value值"); form4.Text = "警告"; form4.ShowDialog(); return; } if (Form1.HeadDic.TryAdd(key, textEdit1.Text)) { } else { Form4 form4 = new Form4("错误:Key已存在"); form4.Text = "错误"; form4.ShowDialog(); } } } else { if (String.IsNullOrEmpty(textEdit1.Text) || String.IsNullOrEmpty(textEdit2.Text)) { Form4 form4 = new Form4("警告:请填写自定义的key和Value值"); form4.Text = "警告"; form4.ShowDialog(); return; } if (Form1.HeadDic.TryAdd(textEdit2.Text, textEdit1.Text)) { } else { Form4 form4 = new Form4("错误:Key已存在"); form4.Text = "错误"; form4.ShowDialog(); } } key = null; this.Close(); }