Powershell to see what Updates have been installed
I was playing around in Powershell today and ran into this nice set of commands that will show you what Updates have been installed as known by the Windows Update Agent:
First create a variable and bind it to the "Microsoft.Update.Searcher" Com Object:
$wu = new-object -com "Microsoft.Update.Searcher"
A quick list of the members returns:
Name MemberType Definition
---- ---------- ----------
BeginSearch Method ISearchJob BeginSearch (string, IUnknown, Variant)
EndSearch Method ISearchResult EndSearch (ISearchJob)
EscapeString Method string EscapeString (string)
GetTotalHistoryCount Method int GetTotalHistoryCount ()
QueryHistory Method IUpdateHistoryEntryCollection QueryHistory (int, ...
Search Method ISearchResult Search (string)
CanAutomaticallyUpgradeService Property bool CanAutomaticallyUpgradeService () {get} {set}
ClientApplicationID Property string ClientApplicationID () {get} {set}
IgnoreDownloadPriority Property bool IgnoreDownloadPriority () {get} {set}
IncludePotentiallySupersededUpdates Property bool IncludePotentiallySupersededUpdates () {get}...
Online Property bool Online () {get} {set}
ServerSelection Property ServerSelection ServerSelection () {get} {set}
ServiceID Property string ServiceID () {get} {set}
So it looks like I can do a QueryHistory to see what has been installed. Before doing so I need to know how many updates have been installed.
$totalupdates = $wu.GetTotalHistoryCount()
Now I can run this command to see my update history:
$wu.QueryHistory(0,$totalupdates)
This will list all of the updates along with the following properties:
Name
----
Categories
ClientApplicationID
Date
Description
HResult
Operation
ResultCode
ServerSelection
ServiceID
SupportUrl
Title
UninstallationNotes
UninstallationSteps
UnmappedResultCode
UpdateIdentity
Comments
Anonymous
January 01, 2003
is there any way to list all the patches/updates like SQL server, Visual Studio etc Regards RameshAnonymous
July 09, 2006
<Experimenting with some folksonomy tags to facilitate searching>
PSMDTAG:TYPE:COM: Microsoft.Update.searcher
Jeffrey Snover [MSFT]
Windows PowerShell Architect
Visit the Windows PowerShell Team blog at: http://blogs.msdn.com/PowerShell
Visit the Windows PowerShell ScriptCenter at: http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx