This VBS script will allow you to enter a remote machine name from an input dialog box and will retrieve system information for the specified machine.
The information captured will be the machines: Manufacturer, Model, Domain Type, Total Physical Memory, Processor Manufacturer, Processor Name, Processor Clock Speed, Bios Version, Serial Number, Video Controller, CD-ROM Manufacturer, CD-ROM Name, KeyBoard and the Primary Drive Size
VBS Script:
strComputer = InputBox ("Enter Machine Name")
Const NUMBER_OF_ROWS = 15
Const NUMBER_OF_COLUMNS = 2
Set objWord = CreateObject("Word.Application")
objWord.Visible = True
Set objDoc = objWord.Documents.Add()
Set objRange = objDoc.Range()
objDoc.Tables.Add objRange, NUMBER_OF_ROWS, NUMBER_OF_COLUMNS
Set objTable = objDoc.Tables(1)
objTable.Cell(1,1).Range.Text = "System Information For: "
objTable.Cell(2,1).Range.Text = "Manufacturer"
objTable.Cell(3,1).Range.Text = "Model"
objTable.Cell(4,1).Range.Text = "Domain Type"
objTable.Cell(5,1).Range.Text = "Total Physical Memory"
objTable.Cell(6,1).Range.Text = "Processor Manufacturer"
objTable.Cell(7,1).Range.Text = "Processor Name"
objTable.Cell(8,1).Range.Text = "Processor Clock Speed"
objTable.Cell(9,1).Range.Text = "Bios Version"
objTable.Cell(10,1).Range.Text = "Serial Number"
objTable.Cell(11,1).Range.Text = "Video Controller"
objTable.Cell(12,1).Range.Text = "CD-ROM Manufacturer"
objTable.Cell(13,1).Range.Text = "CD-ROM Name"
objTable.Cell(14,1).Range.Text = "KeyBoard"
objTable.Cell(15,1).Range.Text = "Primary Drive Size"
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
For Each objItem in colItems
objTable.Rows.Add()
objTable.Cell(1, 2).Range.Text = UCase(strComputer)
objTable.Cell(2, 2).Range.Text = objItem.Manufacturer
objTable.Cell(3, 2).Range.Text = objItem.Model
Select Case objItem.DomainRole
Case 0 strComputerRole = "Standalone Workstation"
Case 1 strComputerRole = "Member Workstation"
Case 2 strComputerRole = "Standalone Server"
Case 3 strComputerRole = "Member Server"
Case 4 strComputerRole = "Backup Domain Controller"
Case 5 strComputerRole = "Primary Domain Controller"
End Select
objTable.Cell(4, 2).Range.Text = strComputerRole
objTable.Cell(5, 2).Range.Text = objItem.TotalPhysicalMemory/1048576 & " MB"
Next
Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
objTable.Cell(6, 2).Range.Text = objItem.Manufacturer
objTable.Cell(7, 2).Range.Text = objItem.Name
objTable.Cell(8, 2).Range.Text = Round(objItem.MaxClockSpeed) & " MHz"
Set colItems = objWMIService.ExecQuery("Select * from Win32_BIOS")
objTable.Cell(9, 2).Range.Text = objItem.Version
objTable.Cell(10, 2).Range.Text = objItem.SerialNumber
Set colItems = objWMIService.ExecQuery("Select * from Win32_VideoController")
objTable.Cell(11, 2).Range.Text = objItem.Name
Set colItems = objWMIService.ExecQuery("Select * from Win32_CDROMDrive")
objTable.Cell(12, 2).Range.Text = objItem.Manufacturer
objTable.Cell(13, 2).Range.Text = objItem.Name
Set colItems = objWMIService.ExecQuery("Select * from Win32_Keyboard")
objTable.Cell(14, 2).Range.Text = objItem.Caption
Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk Where DeviceID = ""C:""")
objTable.Cell(15, 2).Range.Text = Round(objItem.Size /1073741824) & " GB"
objTable.AutoFormat(23)
No Comments