首页 > 解决方案 > 以隐藏方式启动 IE 进程

问题描述

我希望能够从 c# WPF 应用程序中以隐藏状态启动 IE。以下代码可以正确启动 IE,但并未隐藏。它似乎忽略了隐藏标志。我该如何解决?

            proc = new System.Diagnostics.Process();
            proc.EnableRaisingEvents = false;
            string IEKey = @"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE";
            proc.StartInfo.FileName = Microsoft.Win32.Registry.GetValue(IEKey, "Path", "").ToString().TrimEnd(';') + @"\iexplore.exe";
            proc.StartInfo.UseShellExecute = true;
            proc.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
            proc.StartInfo.Arguments = url;
            proc.Start();
            proc.WaitForInputIdle();

标签: c#internet-explorerprocess

解决方案


我尝试进一步搜索这个问题,我得到了这个信息。

您无法使用常规窗口应用程序中的“Process.Start”方法隐藏已启动的 Web 浏览器窗口,例如 Internet Explorer 或 Firefox。如果我们从 Windows 服务启动 Web 浏览器,默认情况下,Windows 服务不包含桌面,因此无法显示任何窗口

参考:打开和隐藏默认 Web 浏览器


推荐阅读