指定的可执行文件不是此OS平台的有效应用程序。 Selenium.ChromeDriver,StartWithCreateProcess(ProcessStartInfo startInfo)

时间:2019-05-12 05:30:42

标签: .net selenium windows-10 selenium-chromedriver nuget-package

我在Windows 10中的OS。我正在尝试运行大约3年前运行良好的Selenium项目,但是我正在运行意外错误消息

The specified executable is not a valid application for this OS platform.

到目前为止,我已经采取的步骤:以管理员身份重新运行VS2015,并得到相同的错误,然后检查chromedriver.exe是否在项目目录中。 徒劳地更新了Selenium.WebDriver.ChromeDriver to 74.0.3729.6Selenium.WebDriver to 3.141Selenium.Support to 3.141的Nuget程序包。

尝试从基本控制台应用程序运行

static void Main(string[] args)
    {
        using (var crawler = new Crawler())
        {
            crawler.Navigate("https://www.google.com");
        }
    }

相同的错误。

经过一些研究,我have found this表示,由于.Net内核的某些更改,我需要以不同的方式触发进程。

但是,我无法直接控制.exe的运行,这是由ChromeDriver OpenQA.Selenium.Chrome.ChromeDriver..ctor(String chromeDriverDirectory, ChromeOptions options)在内部完成的,只有传递的参数是目录和chrome运行选项...

下面是发生错误的堆栈跟踪,

at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at OpenQA.Selenium.DriverService.Start()
at OpenQA.Selenium.Remote.DriverServiceCommandExecutor.Execute(Command commandToExecute)
at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
at OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities)
at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor, ICapabilities desiredCapabilities)
at OpenQA.Selenium.Chrome.ChromeDriver..ctor(String chromeDriverDirectory, ChromeOptions options)
at WebAnalyzer.Controllers.HomeController.About() 

我敢肯定,现在有人设法通过新更改运行Selenium。

我如何运行Selenium ChromeDriver,以便在StartWithCreateProcess上创建进程时不会中断?

1 个答案:

答案 0 :(得分:0)

问题是我用来获取chromedriver.exe的NuGet软件包

无效的是

enter image description here

将其替换为以下Chrome后被解雇

enter image description here

一切都重新开始。