2012-02-09 57 views

回答

1

Win32_Product類查詢速度很慢。儘可能多地過濾。

$計算機名= 「SomeServer」

$應用=獲取-WmiObject可以的Win32_Product篩選器 「installdate = '20120206'」 - 計算機$計算機名

+0

歡迎StackOverflow的希克斯。感謝您的好書。我希望你的經驗和知識能夠幫助很多人,因爲你加入了stackoverflow – Samselvaprabu 2012-02-10 05:41:13

1

WMI接口應該爲此工作。使用命令行:wmic product

這裏是一個blog article,它更詳細地描述它以及如何獲得.csv文件的結果。

1

我不認爲你可以找到卸載應用程序的信息,但是你可以從註冊表中的一些信息(與WMI,你只能得到MSI包):

Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*\' | Select-Object DisplayName,InstallDate,Publisher 
1

要獲取安裝的應用程序列表MSIEXEC在某一天使用本:

$strComputer = "." 

$colItems = get-wmiobject -class "Win32_Product" -namespace "root\CIMV2" -computername $strComputer 

$colitems | ? { $_.installdate -eq "yyyymmdd" }| select name 

這所有已安裝的應用程序的微軟知識庫系統(需要按日期過濾):

$Keys = Get-ChildItem HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall 
$Items = $keys |foreach-object {Get-ItemProperty $_.PsPath} 
$items | select displayname , "(default)" , installdate 

對於未中斷的應用程序,您需要從源「MsiInstaller」查詢application events logs或在事件描述中查詢「卸載」的「字符串搜索」。

相關問題