Get-WmiObject -class Win32_Product
- старый динозавр, который должен умереть.
Get-Package
, вероятно, сломан, и я пометил его в официальный репозиторий Microsoft
Тем временем Майк Ф. Роббинс помог мне понять, насколько гнилой Win32_Product
, и он привел меня к этому потрясающему сообщению , где вы можете скопировать, вставить код в файл test.ps1
и установить его в свойСистема PowerShell, выполнив . .\test.ps1
Теперь вы установили метод Get-Software
, который поможет вам погрузиться в свои программы со скоростью света (не как Win32_Product
).
Теперь я могу использовать:
Get-Software | Where-Object { $_.DisplayName -like "*Notepad*" } | Format-Table
, чтобы увидеть Блокнот ++, и я могу удалить его, используя UninstallString
Это не то, что я хотел, а самая близкая рабочая вещь, которую я нашел.Не стесняйтесь добавлять новый ответ, если найдете лучший.
РЕДАКТИРОВАТЬ: Действительно, была ошибка, и Microsoft устраняет ее.
На данный момент вы можете использовать:
get-package *notepad* |% { & $_.Meta.Attributes["UninstallString"]}