Selenium C#InPrivate模式Internet Explorer IE 11抛出异常

时间:2017-03-10 21:56:59

标签: selenium selenium-webdriver internet-explorer-11 selenium-iedriver

我要求在Winodws10上以私有模式打开IE11。尝试通过以下代码,但它抛出异常“启动Internet Explorer时出现意外错误。无法使用CreateProcess()API。要使用Internet Explorer 8或更高版本的CreateProcess(),HKEY_CURRENT_USER \ Software \ Microsoft \ Internet Explorer中的注册表设置值\ Main \ TabProcGrowth必须为'0'。“

代码:  int val = Convert.ToInt32(Microsoft.Win32.Registry.GetValue(“HKEY_CURRENT_USER \ Software \ Microsoft \ Internet Explorer \ Main \ TabProcGrowth”,“”, - 1));

            InternetExplorerOptions ops = new InternetExplorerOptions();
            ops.ForceCreateProcessApi = true;
            ops.BrowserCommandLineArguments = "-private";
            IWebDriver driver = new InternetExplorerDriver(url, ops);

RegEdit中有密钥,我可以成功阅读。

2 个答案:

答案 0 :(得分:2)

删除ops.ForceCreateProcessApi = true;有助于启动浏览器,但不能处于私有模式。你需要

的组合
ops.ForceCreateProcessApi = true;
ops.BrowserCommandLineArguments = "-private";

答案 1 :(得分:0)

我遇到了和你一样的问题。在我试图删除以下行之前,我经常搜索并找不到解决方案:

ops.ForceCreateProcessApi = true;

感谢上帝,问题解决了。我很想知道它是否帮助你解决问题

相关问题