У меня есть несколько вопросов относительно Microsoft Edge и PowerShell.
Когда открыты два пограничных окна с разными заголовками окон, я хотел бы указать один заголовок окна в PowerShell и использовать команду Stop-Process, чтобы закрыть окно с этим заголовком окна. Код файла ps1 с ожидаемыми характеристиками приведен ниже.
$TargetTitle = "test"
$EdgeProcesses = (Get-Process -Name msedge)
foreach ($process in $EdgeProcesses) {
$title = $process.MainWindowTitle
if ($title -eq $TargetTitle) {
$id = $process.Id
Stop-Process -Id $id
}
}
Когда окна с заголовками A и B открыты, и когда вы используете приведенный выше код для указания окна с заголовком A и Stop-Process, он будет включать не только окно с заголовком A, но и все окна Edge, включая окно окно заголовка B. То же самое происходит, даже если Edge открыт в режиме приложения.
Кажется, что Edge генерирует только одну группу заголовков, включающую все окна. Я думаю, это связано с многопроцессной архитектурой Edge.
Если вы пытаетесь автоматизировать Edge, я предлагаю вам использовать WebDriver.