KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
i have this script that reads a list of computers and check to see if the computers have the right software version install. the script echo to me the computers with the wrong version, but i want to make a log instead Dim strComputer, objFSO, ObjShell, strDisplayName, objList, strObject Dim objReg, arrSubKeys, strProduct, strVersion, strReqVersion Const For_Writing = 2 Const ForReading = 1 const ForAppending = 3 Const HKLM = &H80000002 Const strKeyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" strReqVersion = "8.2.1 MP2" Set objFSO = CreateObject("Scripting.FileSystemObject") Set objShell = CreateObject("WScript.Shell") Set objList = objFSO.OpenTextFile("c:\test\test.txt",ForReading) Do While Not objList.AtEndOfStream strComputer = objList.ReadLine If HostOnline(strComputer) = True Then Inventory(strComputer) End If Loop Function Inventory(strComputer) Set objTextFile = objFSO.OpenTextFile("c:\test\inventory.txt",2,true) 'creating a dictionary object Set objDictionary = CreateObject("Scripting.Dictionary") Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _ strComputer & "\root\default:StdRegProv") ' Enumerate the subkeys of the Uninstall key objReg.EnumKey HKLM, strKeyPath, arrSubKeys For Each strProduct In arrSubKeys ' Get the product's display name objReg.GetStringValue HKLM, strKeyPath & "\" & strProduct, "DisplayName", strDisplayName ' Process only products whose name contain 'symantec' If InStr(1, strDisplayName, "Symantec", vbTextCompare) > 0 Then ' Get the product's display version objReg.GetStringValue HKLM, strKeyPath & "\" & strProduct, "DisplayVersion", strVersion If strReqVersion <> strVersion Then WScript.Echo strObject objDictionary.Add strComputer, strVersion For Each strObject In objDictionary WScript.Echo strObject
Tags (comma-separated)
Save Edits
Cancel