我有以下几行代码:

Process aProcess = Process.Start("ieexplorer", aDummyHTMLFilePath);
//I do nothing in between
aProcess.Kill();

如果有 NO 其他 IE 窗口打开,这将运行顺利。

但是如果有一个窗口打开,我会在 System.InvalidOperationException 上得到一个 aProcess.Kill(); 说:



另外,我注意到在这种情况下, aProcess.HasExited 在上面代码中的第 1 行之后为真。

即使有其他 IE 窗口打开,如何顺利关闭 IE?

最佳答案

当您像这样启动 Internet Explorer 的新实例时,它会尝试查看 Internet Explorer 是否已经在运行。如果是这样,则 URL 在已经运行的实例中打开,新实例立即退出。这意味着当您尝试终止您启动的进程时,它已经自动退出。但是,您将在屏幕上看到一个新的浏览器窗口或选项卡,但它由现有的 Internet Explorer 进程托管。

关于c# - Process.Kill() 问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11930914/

10-14 20:55