Browser.cs 1.8 KB

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