Почему перечисление установленных пакетов MSI происходит так медленно?
Это продолжение этогоquestion.I»
используя этот слегка измененный скрипт, чтобы перечислить все установленные пакеты MSI:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & _
"{impersonationLevel=impersonate}!\\" & _
strComputer & _
"\root\cimv2")
Set colSoftware = objWMIService.ExecQuery _
("SELECT * FROM Win32_Product")
If colSoftware.Count > 0 Then
For Each objSoftware in colSoftware
WScript.Echo objSoftware.Caption & vbtab & _
objSoftware.Version
Next
Else
WScript.Echo "Cannot retrieve software from this computer."
End If
Что удивительно, так это его ужасная производительность. Перечисление 34 установленных пакетов MSI на моем компьютере XP занимает от 3 до 5 минут!
Для сравнения, Linux, который стоит помимо этого, берет 7 с, чтобы перечислить более 1400 об / мин ...вздох
Есть какие-нибудь подсказки по этому поводу?