1,。关闭
载入系统api
[DllImport("user32.dll")]
private static extern bool EnumWindows(EnumWindowsProc enumProc, IntPtr lParam);
[DllImport("user32.dll", CharSet = CharSet.Unicode, SetLastError = true)]
private static extern int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount);
[DllImport("user32.dll", CharSet = CharSet.Unicode)]
private static extern int GetWindowTextLength(IntPtr hWnd);
[DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
private static extern int GetClassName(IntPtr hWnd, StringBuilder lpClassName, int nMaxCount);
[DllImport("user32.dll", ExactSpelling = true, CharSet = CharSet.Auto)]
private static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
public delegate bool EnumWindowsProc(IntPtr hWnd, IntPtr lParam);
[DllImport("user32.dll")]
public static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo);
public const int SW_HIDE = 0;
public const int SW_SHOWNORMAL = 1;
public const int SW_SHOWMINIMIZED = 2;
public const int SW_SHOWMAXIMIZED = 3;
找到线程关掉它。
var processes = Process.GetProcessesByName("chrome");
//获取程序名的所有进程
if (processes.Length > 0)
{
foreach (var app in processes)
{
if (!app.HasExited)
{
app.Kill();//关闭进程
}
}
}
2,打开。
this.TransparencyKey = Color.Red;//背景色为红色后显示为空白。
this.BackColor = Color.Red;
string url = string.IsNullOrWhiteSpace( ConfigurationManager.AppSettings["Url"])?"http://localhost/": ConfigurationManager.AppSettings["Url"] ;
this.Location = new Point(Screen.PrimaryScreen.WorkingArea.Width-100,8);//当前窗体位置
this.Opacity =10;
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.FileName ="chrome.exe";// Environment.CurrentDirectory + "\\Chrome\\App\\chrome.exe";
startInfo.Arguments = $" --kiosk \"{url}\"";
startInfo.UseShellExecute = true;
startInfo.RedirectStandardInput = false;
startInfo.RedirectStandardOutput = false;
startInfo.RedirectStandardError = false;
startInfo.CreateNoWindow = true;
System.Diagnostics.Process.Start(startInfo);
3.获取是否系统安装了浏览器
if (!Common.SystemGet.RegistryHelper.checkSoftIsSetupLM("Chrome")&& !Common.SystemGet.RegistryHelper.checkSoftIsSetupUser("Chrome"))
{
MessageBox.Show("请安装谷歌chrome浏览器。", "系统提示:", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}