You are here:
ActiveXperts.com > ActiveXperts Network Monitor > WindowsManagement > Scripts > Computer Management > Software
Quicklinks
NOTE: ActiveXperts Network Monitor ships with a large collection of VBScript scripts to monitor any aspect of your network. Most VBScript scripts also have a PowerShell implementation. Download Now »
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_CodecFile",,48)
For Each objItem in colItems
Wscript.Echo "Access Mask: " & objItem.AccessMask
Wscript.Echo "Archive: " & objItem.Archive
Wscript.Echo "Caption: " & objItem.Caption
strCreationDate = WMIDateStringToDate(objItem.CreationDate)
Wscript.Echo "Creation Date: " & strCreationdate
Wscript.Echo "Drive: " & objItem.Drive
Wscript.Echo "Eight Dot Three File Name: " & _
objItem.EightDotThreeFileName
Wscript.Echo "Extension: " & objItem.Extension
Wscript.Echo "File Name: " & objItem.FileName
Wscript.Echo "File Size: " & objItem.FileSize
Wscript.Echo "File Type: " & objItem.FileType
Wscript.Echo "File System Name: " & objItem.FSName
Wscript.Echo "Group: " & objItem.Group
Wscript.Echo "Hidden: " & objItem.Hidden
strInstallDate = WMIDateStringToDate(objItem.InstallDate)
Wscript.Echo "Last Accessed: " & strLastAccessed
strLastModified = WMIDateStringToDate(objItem.LastModified)
Wscript.Echo "Last Modified: " & strLastModified
Wscript.Echo "Manufacturer: " & objItem.Manufacturer
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo "Path: " & objItem.Path
Wscript.Echo "Version: " & objItem.Version
Next
Function WMIDateStringToDate(dtmDate)
WMIDateStringToDate = CDate(Mid(dtmDate, 5, 2) & "/" & _
Mid(dtmDate, 7, 2) & "/" & Left(dtmDate, 4) _
& " " & Mid (dtmDate, 9, 2) & ":" & _
Mid(dtmDate, 11, 2) & ":" & Mid(dtmDate, _
13, 2))
End Function
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_ClassicCOMClass")
For Each objItem in colItems
Wscript.Echo "Component ID: " & objItem.ComponentId
Wscript.Echo "Description: " & objItem.Description
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo
Next
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComponentCategory")
For Each objItem in colItems
Wscript.Echo "Category ID: " & objItem.CategoryId
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo
Next
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_ClassicCOMClassSetting")
For Each objItem in colItems
Wscript.Echo "Application ID: " & objItem.AppID
Wscript.Echo "Component ID: " & objItem.ComponentId
Wscript.Echo "Control: " & objItem.Control
Wscript.Echo "Default Icon: " & objItem.DefaultIcon
Wscript.Echo "Description: " & objItem.Description
Wscript.Echo "Inprocess Server 32: " & objItem.InprocServer32
Wscript.Echo "Insertable: " & objItem.Insertable
Wscript.Echo "Java Class: " & objItem.JavaClass
Wscript.Echo "ProgId: " & objItem.ProgId
Wscript.Echo "Version Independent ProgId: " & _
objItem.VersionIndependentProgId
Wscript.Echo
Next
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_DCOMApplication")
For Each objItem in colItems
Wscript.Echo "Application ID: " & objItem.AppID
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo
Next
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_DCOMApplicationSetting")
For Each objItem in colItems
Wscript.Echo "Application ID: " & objItem.AppID
Wscript.Echo "Description: " & objItem.Description
Wscript.Echo "Enable At Storage Activation: " & _
objItem.EnableAtStorageActivation
Wscript.Echo "Local Service: " & objItem.LocalService
Wscript.Echo "Service Parameters: " & objItem.ServiceParameters
Wscript.Echo "Use Surrogate: " & objItem.UseSurrogate
Wscript.Echo
Next
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_ApplicationService")
For Each objItem in colItems
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo "Start Mode: " & objItem.StartMode
Wscript.Echo
Next
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.CreateTextFile("c:\scripts\software.tsv", True)
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSoftware = objWMIService.ExecQuery _
("Select * from Win32_Product")
objTextFile.WriteLine "Caption" & vbtab & _
"Description" & vbtab & "Identifying Number" & vbtab & _
"Install Date" & vbtab & "Install Location" & vbtab & _
"Install State" & vbtab & "Name" & vbtab & _
"Package Cache" & vbtab & "SKU Number" & vbtab & "Vendor" & vbtab _
& "Version"
For Each objSoftware in colSoftware
objTextFile.WriteLine objSoftware.Caption & vbtab & _
objSoftware.Description & vbtab & _
objSoftware.IdentifyingNumber & vbtab & _
objSoftware.InstallDate2 & vbtab & _
objSoftware.InstallLocation & vbtab & _
objSoftware.InstallState & vbtab & _
objSoftware.Name & vbtab & _
objSoftware.PackageCache & vbtab & _
objSoftware.SKUNumber & vbtab & _
objSoftware.Vendor & vbtab & _
objSoftware.Version
Next
objTextFile.Close
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.CreateTextFile("c:\scripts\software.tsv", True)
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSoftware = objWMIService.ExecQuery _
("Select * from Win32_Product")
objTextFile.WriteLine "Caption" & vbtab & _
"Description" & vbtab & "Identifying Number" & vbtab & _
"Install Date" & vbtab & "Install Location" & vbtab & _
"Install State" & vbtab & "Name" & vbtab & _
"Package Cache" & vbtab & "SKU Number" & vbtab & "Vendor" & vbtab _
& "Version"
For Each objSoftware in colSoftware
objTextFile.WriteLine objSoftware.Caption & vbtab & _
objSoftware.Description & vbtab & _
objSoftware.IdentifyingNumber & vbtab & _
objSoftware.InstallDate2 & vbtab & _
objSoftware.InstallLocation & vbtab & _
objSoftware.InstallState & vbtab & _
objSoftware.Name & vbtab & _
objSoftware.PackageCache & vbtab & _
objSoftware.SKUNumber & vbtab & _
objSoftware.Vendor & vbtab & _
objSoftware.Version
Next
objTextFile.Close
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_ProgIDSpecification")
For Each objItem in colItems
Wscript.Echo "Caption: " & objItem.Caption
Wscript.Echo "Check ID: " & objItem.CheckID
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo "Parent: " & objItem.Parent
Wscript.Echo "ProgID: " & objItem.ProgID
Next
Const ALL_USERS = True
Set objService = GetObject("winmgmts:")
Set objSoftware = objService.Get("Win32_Product")
errReturn = objSoftware.Install("c:\scripts\database.msi", , ALL_USERS)
Const wbemImpersonationLevelDelegate = 4
Set objWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objConnection = objwbemLocator.ConnectServer _
("WebServer", "root\cimv2", "fabrikam\administrator", _
"password", , "kerberos:WebServer")
objConnection.Security_.ImpersonationLevel = wbemImpersonationLevelDelegate
Set objSoftware = objConnection.Get("Win32_Product")
errReturn = objSoftware.Install("\\atl-dc-02\scripts\1561_lab.msi",,True)
Wscript.Echo errReturn
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSoftware = objWMIService.ExecQuery _
("Select * from Win32_Product Where Name = 'Personnel database'")
For Each objSoftware in colSoftware
objSoftware.Uninstall()
Next
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Binary")
For Each objItem in colItems
Wscript.Echo "Name: " & objItem.Name
Wscript.Echo "Product Code: " & objItem.ProductCode
Wscript.Echo
Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSoftware = objWMIService.ExecQuery _
("Select * from Win32__Product Where Name = 'Personnel Database'")
For Each objSoftware in colSoftware
errReturn = objSoftware.Upgrade("c:\scripts\database2.msi")
Next