Подскажите, пожалуйста, использую несколько экземпляров PhantomJSDriver :
PhantomJSDriver[] Driver = new PhantomJSDriver[memberscount];
for (int i = 0; i < memberscount; i++)
{
driverService[i] = PhantomJSDriverService.CreateDefaultService();
driverService[i].HideCommandPromptWindow = true;
driverService[i].LoadImages = false;
driverService[i].ProxyType = "http";
driverService[i].Proxy = proxy[i];
options[i] = new PhantomJSOptions();
options[i].AddAdditionalCapability("phantomjs.page.settings.userAgent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36");
Driver[i] = new PhantomJSDriver(driverService[i], options[i]);
Driver[i].Manage().Window.Size = new Size(1920, 1080);
Driver[i].ExecutePhantomJS(script);
}
Каждый экземпляр работает хорошо, пока я не пытаюсь открыть новую вкладку и перейти по ссылке в ней :
IJavaScriptExecutor jscript = Driver[i] as IJavaScriptExecutor;
jscript.ExecuteScript("window.open('', '_blank');");
Driver[i].SwitchTo().Window(Driver[i].WindowHandles[1]);
Driver[i].Navigate().GoToUrl(url);
В этот момент, Второй и все последующие экземпляры Driver начинают грузить ЦП на 10%, а оперативная память растет по экспоненте, пока процесс phantomjs.ехе сам не закрывается (без ошибок)
А первый экземпляр PhantomJSDriver с окнами работает стабильно, проблемы начинаются, только если открыть окно со второго и далее драйвера.
Пробовал открывать так :
Driver.ExecuteJavaScript("window.open('" + url + "', '_blank');");
Тоже самое... Как можно найти причину? Спасибо
Update :
Обнаружил, что такое так же происходит после создания второго доп.окна(третьего), и перехода по ссылке :
url = "...1";
Driver[i].ExecuteScript("window.open('', '_blank');");
Driver[i].SwitchTo().Window(Driver[i].WindowHandles[1]);
Driver[i].Navigate().GoToUrl(url);
url = "...2";
Driver[i].ExecuteScript("window.open('', '_blank');");
Driver[i].SwitchTo().Window(Driver[i].WindowHandles[2]);
Driver[i].Navigate().GoToUrl(url); // После этого процесс зависает
CurrentWindowHandle принимает верный, третье окно создается, но при взаимодействии с ним, процесс выключается.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть некоторые данные которые подгружаются функциями API (небольшое веб приложение)
подскажите пожалуйста есть ли в C# возможность находясь в учетке обычного доменного пользователя получить информацию об установленном ПО и информацию...
Есть Модель ClientТуда записывается вся контактная информация о клиенте