Селен, Internet Explorer, IEDriverServer.exe и все эти ошибки

#selenium #selenium-iedriver

Вопрос:

У меня есть код, автоматизирующий IE. Код отлично работает локально. Когда я тоже развертываю сервер, этого не происходит. Я добавил разделы реестра, я установил зоны безопасности и все флажки.

Ранее, в качестве теста, я решил зайти на сервер и вручную запустить IEDriverServer.exe, это запускает его в видимом окне командной строки. Когда я это делаю, мой код действительно запускается. Я вижу, что IE загружается на сервер и делает то, что он должен делать. НО, когда я позволю своему коду начать IEDriverServer.exe, я получаю ошибки. Я замечаю, что командного окна нет (оно работает в фоновом режиме).

Я проверил, что он действительно запущен в диспетчере задач и работает из того же места, того же файла и т. Д.

Вот код, который я использую для его запуска.

 InternetExplorerDriverService service = InternetExplorerDriverService.CreateDefaultService(path);
service.HideCommandPromptWindow = false; //Window is still hidden even if I do this
service.LoggingLevel = InternetExplorerDriverLogLevel.Trace;
service.LogFile = logFilePath;
RemoteWebDriver driver = new InternetExplorerDriver(service, options, TimeSpan.FromMinutes(3)));
 

Любые опечатки являются моими собственными, так как я не могу копировать/вставлять код с того места, где он находится.

Когда я запускаю автоматизацию с помощью этого подхода, я получаю такие ошибки: «Сбой во время инициализации. Неожиданная ошибка при запуске Internet Explorer. IELaunchURL() вернул HRESULT 80070012 («Больше файлов нет».) для URL-адреса ‘http://www.google.com» (Сессия не создана).

Повторюсь, эта ошибка исчезнет, если я начну IEDriverServer.exe вручную на сервере. Но на самом деле я не могу сделать это на сервере. Система, которую я развертываю, должна быть в состоянии запустить это для себя, запустить автоматизацию, завершение работы и т. Д.

Есть какие-нибудь идеи?

Спасибо!