added show-updates script
This commit is contained in:
parent
c24e98d189
commit
6709cef641
6
tools/show-updates.cmd
Normal file
6
tools/show-updates.cmd
Normal file
@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
call check-for-admin
|
||||
if %ERRORLEVEL% neq 0 exit /b
|
||||
|
||||
powershell -command %TOOLS%\show-updates.ps1
|
||||
|
43
tools/show-updates.ps1
Normal file
43
tools/show-updates.ps1
Normal file
@ -0,0 +1,43 @@
|
||||
# show all updates ...
|
||||
|
||||
function Convert-WuaResultCodeToName {
|
||||
|
||||
param([Parameter(Mandatory=$true)] [int] $ResultCode)
|
||||
$Result = $ResultCode
|
||||
|
||||
switch($ResultCode) {
|
||||
2 { $Result = "Succeeded" }
|
||||
3 { $Result = "Succeeded With Errors" }
|
||||
4 { $Result = "Failed" }
|
||||
}
|
||||
|
||||
return $Result
|
||||
}
|
||||
|
||||
function Get-WuaHistory {
|
||||
|
||||
# Get a WUA Session
|
||||
$session = (New-Object -ComObject 'Microsoft.Update.Session')
|
||||
|
||||
# Query the latest history starting with the first record
|
||||
$history = $session.QueryHistory("",0,50) | ForEach-Object {
|
||||
$Result = Convert-WuaResultCodeToName -ResultCode $_.ResultCode
|
||||
|
||||
# Make the properties (hidden in com properties) visible.
|
||||
$_ | Add-Member -MemberType NoteProperty -Value $Result -Name Result
|
||||
$Product = $_.Categories | Where-Object {$_.Type -eq 'Product'} | Select-Object -First 1 -ExpandProperty Name
|
||||
$_ | Add-Member -MemberType NoteProperty -Value $_.UpdateIdentity.UpdateId -Name UpdateId
|
||||
$_ | Add-Member -MemberType NoteProperty -Value $_.UpdateIdentity.RevisionNumber -Name RevisionNumber
|
||||
Write-Output $_
|
||||
|
||||
}
|
||||
|
||||
# Remove null records and only return the fields we want
|
||||
$history |
|
||||
Where-Object {![String]::IsNullOrWhiteSpace($_.title)} |
|
||||
Select-Object Result, Date, Title
|
||||
|
||||
}
|
||||
|
||||
Get-WuaHistory | Format-Table
|
||||
|
Loading…
Reference in New Issue
Block a user