My WSUS server runs on a Windows Core edition where I don’t have Internet Explorer installed.
Whatif I want to import the Convenience rollup update for Windows 7 SP1 and Windows Server 2008 R2 SP1 from the catalog?
Here’s the way to go:
On a client computer with a GUI, launch internet explorer with high privileges to be able to install the ActiveX.
$HT = @{ FilePath = 'C:\Program Files (x86)\Internet Explorer\iexplore.exe' ; ArgumentList = 'http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB3125574' ; Verb = 'Runas' } Start-Process @HT
Install the ActiveX, add the update to the basket, view your basket, download, browse…
Move the file onto the WSUS server…and check if the file is digitally signed
Get-AuthenticodeSignature -FilePath ~\downloads\Catalog\*\*.msu
The WSUS API has an ImportUpdateFromCatalogSite, documented here on msdn.
I’m missing the UpdateID. Where do I find this Id?
It appears that if you click on the link highlighted below…
…you get on a page where you’ve more details about the update.
The updateId actually appears in the address bar. 😀
Now, to import the update into WSUS, I do:
$MSUfile = 'C:\Users\administrator\Downloads\Catalog\Update for Windows 7 for x64-based Systems (KB3125574)\AMD64-all-windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu' (Get-WsusServer).ImportUpdateFromCatalogSite( '49924c88-1b31-4b0f-ad3d-48df9877f385', $MSUfile ) # Find the imported file (Get-WsusServer).SearchUpdates('3125574') | fl *
The convenience update has been successfully imported and can now be approved.