Browser.cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. using System;
  2. using System.Diagnostics;
  3. using System.Runtime.InteropServices;
  4. using System.Windows.Forms;
  5. using UAS_Web.tool;
  6. using CefSharp;
  7. using CefSharp.WinForms;
  8. namespace UAS_Web
  9. {
  10. public partial class Browser : Form
  11. {
  12. [DllImport("User32.dll")]
  13. public static extern IntPtr GetForegroundWindow(); //获取活动窗口句柄
  14. [DllImport("User32.dll", CharSet = CharSet.Auto)]
  15. public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID); //获取线程ID
  16. private ChromiumWebBrowser webBrowser;
  17. public Browser()
  18. {
  19. InitializeComponent();
  20. Text = "思拓微-供应商条码打印";
  21. string path = "http://192.168.253.6/uas_dev/jsps/vendbarcode/login.jsp";
  22. webBrowser = new ChromiumWebBrowser(path)
  23. {
  24. Dock = DockStyle.Fill
  25. };
  26. webBrowser.MenuHandler = new MenuHandler();
  27. webBrowser.RequestHandler = new RequestHandler();
  28. Controls.Add(webBrowser);
  29. webBrowser.LoadError += WebBrowser_LoadError;
  30. }
  31. private void WebBrowser_LoadError(object sender, LoadErrorEventArgs e)
  32. {
  33. MessageBox.Show("当前网络无法访问" + e.ErrorText);
  34. }
  35. private void Browser_FormClosing(object sender, FormClosingEventArgs e)
  36. {
  37. webBrowser.GetBrowser().CloseBrowser(true);
  38. Cef.Shutdown();
  39. }
  40. private void Browser_Load(object sender, EventArgs e)
  41. {
  42. Process[] pro = Process.GetProcessesByName("UAS_Web");
  43. for (int i = 0; i < pro.Length; i++)
  44. {
  45. if (pro[i].Id != Process.GetCurrentProcess().Id)
  46. {
  47. pro[i].Kill();
  48. }
  49. }
  50. }
  51. }
  52. }