Я пытаюсь получить список доступных обновлений, используя

$UpdateSession = New-Object -ComObject 'Microsoft.Update.Session'
Write-Host "[1]"

$UpdateSession.ClientApplicationID = 'MSDN PowerShell Sample'
Write-Host "[2]"

$UpdateSearcher = $UpdateSession.CreateUpdateSearcher()
Write-Host "[3]" 

$SearchResult = $UpdateSearcher.Search("IsInstalled=0 and IsHidden=0")
Write-Host "[4]"

Последняя инструкция $SearchResult = $UpdateSearcher.Search("IsInstalled=0 and IsHidden=0") зависает, ничего не возвращает, и я не могу понять, почему.
Выход :

[1]
[2]
[3]
<running...>

Я предполагаю, что это действительно что-то делает, потому что я не могу CTRL+C, чтобы остановить это. Приходится перезапускать Powershell.

(W7 SP1, .NET Framework 4.6.1, Powershell 4.0)

Любая идея ?

Изменить: взял эти строки из скрипта Get-WindowsUpdates.ps1

0