我們的網域有一個 KMS 啟動伺服器和許多虛擬桌面、常規桌面和筆記型電腦,它們都安裝了 Office 2010 或 2013。大多數應該是 32 位元 Office,但我知道其中一些是 64 位元。有什麼方法(使用系統中心、powershell、活動目錄???)來取得哪些電腦安裝了哪個版本的 Office 的可讀報告?
我使用了一個典型的應用程式監視器,但它提供了大量與 Office 相關的元件,包括看起來像是 64 位元 Office 元件的橋樑的東西,即使這些機器安裝了 32 位元 Office。
感謝您的任何幫助!
答案1
我使用 Get-InstalledSoftware_32_And_64.ps1。它非常有用,可以滿足您的需求。您甚至可以將其設定為透過一些額外的腳本向電腦物件添加擴充屬性,然後將這些擴充功能與其他 AD 元件結合使用。但這超出了本答案的範圍。
https://gallery.technet.microsoft.com/scriptcenter/PowerShell-Installed-70d0c0f4
這是獲取清單的簡單方法。
筆記:這依賴於在運行以下腳本之前Get-InstalledSoftware_32_And_64.ps1
進行設定。Import-Module
# Import AD module
Import-Module ActiveDirectory
# Setup array of computer names
$computers = Get-ADComputer -Filter 'ObjectClass -eq "Computer"' | Select -Expand DNSHostName
# foreach loop - do stuff...
foreach ( $computer in $computers ) {
$output = Get-SoftwareList -Computername $computer | Select-String "Microsoft Office 2013"
if ( $output -match "64" ) {
echo "$computer >> Office2013-64_Installs.txt"
}
elseif ( $output -match "32" ) {
echo "$computer >> Office2013-32_Installs.txt"
}
else {
$recheck = Get-SoftwareList -Computername $computer | Select-String "Microsoft Office"
echo "$Computer :: $recheck >> Office2013_Check_ErrorLog.txt"
}
}
錯誤日誌將列出未安裝 Office 2013 或安裝了錯誤版本的電腦。您可以進行更多驗證,但這將幫助您入門。