Browser.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. using System;
  2. using System.Diagnostics;
  3. using System.Windows.Forms;
  4. using UAS_Web.tool;
  5. using CefSharp;
  6. using CefSharp.WinForms;
  7. using System.Text.RegularExpressions;
  8. using System.Collections.Generic;
  9. namespace UAS_Web
  10. {
  11. public partial class Browser : Form
  12. {
  13. private ChromiumWebBrowser webBrowser;
  14. public Browser()
  15. {
  16. InitializeComponent();
  17. Text = "供应商条码打印";
  18. string path = "http://192.168.253.80:8090/ERP/jsps/vendbarcode/login.jsp";
  19. webBrowser = new ChromiumWebBrowser(path)
  20. {
  21. Dock = DockStyle.Fill
  22. };
  23. CheckForIllegalCrossThreadCalls = false;
  24. webBrowser.MenuHandler = new MenuHandler();
  25. webBrowser.RequestHandler = new RequestHandler();
  26. webBrowser.DownloadHandler = new DownLoadFile();
  27. Controls.Add(webBrowser);
  28. webBrowser.LoadError += WebBrowser_LoadError;
  29. }
  30. private void WebBrowser_LoadError(object sender, LoadErrorEventArgs e)
  31. {
  32. //指定放大镜
  33. if (e.FailedUrl.Contains("vendbarcode/batchdelivery.jsp?whoami=Delivery!Deal#"))
  34. return;
  35. if (e.FailedUrl.Contains("common/excel"))
  36. return;
  37. if (e.FailedUrl.Contains("common/downloadbyId.action"))
  38. return;
  39. MessageBox.Show("当前网络无法访问" + e.ErrorText);
  40. }
  41. private void Browser_FormClosing(object sender, FormClosingEventArgs e)
  42. {
  43. webBrowser.GetBrowser().CloseBrowser(true);
  44. Process.GetCurrentProcess().Kill();
  45. }
  46. private void Browser_Load(object sender, EventArgs e)
  47. {
  48. Process[] pro = Process.GetProcessesByName("UAS_Web");
  49. for (int i = 0; i < pro.Length; i++)
  50. {
  51. if (pro[i].Id != Process.GetCurrentProcess().Id)
  52. {
  53. pro[i].Kill();
  54. }
  55. }
  56. }
  57. }
  58. }