Как получить PID определенного chromedriver в С# - есть несколько экземпляров

Из-за раздражающей ошибки, которая существует в селене: https://github.com/SeleniumHQ/selenium/issues/4054

Мне нужно вручную убить chromedriver.exe. Тем не менее, мне интересно, могу ли я получить PID существующего драйвера Chrome?

Я использую виндовс 8.1

Другие компоненты

  • Селен.Поддержка 3.4.0
  • Селен.Вебдрайвер 3.4.0
  • Selenium.WebDriver.ChromeDriver 2.29.0
  • С# .нет 4.6.2
  • Сообщество Microsoft Visual Studio 2017, версия-кандидат

Чтобы уточнить, существует несколько экземпляров, и я хочу получить PID только определенного экземпляра.


person MonsterMMORPG    schedule 22.05.2017    source источник
comment
Возможный дубликат Убить некоторые процессы по имени файла .exe   -  person BugFinder    schedule 22.05.2017
comment
Уже есть ответы на ряд вопросов об уничтожении процессов по имени, получении различных деталей и т. д.   -  person BugFinder    schedule 22.05.2017
comment
@BugFinder у меня есть несколько экземпляров одного и того же exe   -  person MonsterMMORPG    schedule 22.05.2017
comment
Хорошо, ты запустил exe или сделал что-то еще?   -  person BugFinder    schedule 22.05.2017
comment
@BugFinder начинается что-то еще. эта команда: ChromeDriver cdDrive = new ChromeDriver();   -  person MonsterMMORPG    schedule 22.05.2017
comment
Конечно, вы не просто хотите использовать cdDrive.Close(); cdDrive.Выйти(); ?   -  person BugFinder    schedule 22.05.2017
comment
@BugFinder уверен, что хотел бы их использовать. но из-за раздражающей ошибки в селене они не работают при определенных обстоятельствах: github.com/SeleniumHQ/selenium /вопросы/4054   -  person MonsterMMORPG    schedule 22.05.2017
comment
Я ищу что-то подобное. когда я запускаю новый chromedriver, я хотел бы иметь его идентификатор процесса или иметь возможность передать аргумент, который идентифицирует его. Тогда я буду знать, какой из них убить позже.   -  person Daniel Williams    schedule 05.11.2020


Ответы (1)


я думаю, вы можете использовать ответ по этой ссылке Получение pid процесса, созданного на C#

как было указано, где System.Diagnostics.Process.GetProcessesByName("chromdriver.exe")[0].Id

вернет номер PID

person Arbo    schedule 22.05.2017
comment
но есть несколько экземпляров - person MonsterMMORPG; 22.05.2017
comment
у вас есть несколько процессов chromdriver.exe в памяти? - person Arbo; 22.05.2017
comment
да, так как я запускаю несколько отдельных экземпляров - person MonsterMMORPG; 22.05.2017