Я следовал всем примерам в этих темах, но в последнем обновлении что-то изменилось.
Закройте окно проводника, изменив идентификатор или имя файла
Закрытие всех проводников Windows в PowerShell
Как закрыть все windows
Моя windows версия: Version: 1909 BuildNumber: 18363
Я застрял при попытке закрыть окно обозревателя с помощью PowerShell со следующим кодом:
$myFolder = "C:\Program Files"
$shell = New-Object -ComObject Shell.Application
$window = $shell.Windows() | Where-Object { $_.LocationURL -eq "$(([uri]"$myFolder").AbsoluteUri)" }
write-output ($window.LocationURL -eq $(([uri]"$myFolder").AbsoluteUri))
# write-output $window.AbsoluteUri
# write-output ($window.HWND)
# write-output ($window.LocationURL)
# Get-Member -InputObject $window.Parent()
Get-Member -InputObject $window # prints out the methods associated with the window
$window.Refresh() # this method works
$window.Quit() # this method doesn't
$window.GoBack() # this method works
$window.Parent().Quit() # this doesn't
# $window | ForEach-Object { $_.Quit() }
Если вы откроете C:\Program Files
вы увидите, что методы, описанные в коде, работают, но метод Quit
не работает.