This script is used to gather system information and mail to a specified email address. Information sent including:

Download SendSysInfo (vbs file)

  1. '==========================================================
  2. '
  3. ' NAME: SendSysInfo.vbs
  4. '
  5. ' AUTHOR: Scott Greenberg
  6. ' Company: SG Technology
  7. ' Website: http://gogogadgetscott.info
  8. ' Date   : 1/29/2004
  9. '
  10. ' COMMENT: N/A
  11. '
  12. ' Copyright© 2004. SG Technology. All rights reserved.
  13. '
  14. '==========================================================
  15. Option Explicit
  16. On Error Resume Next
  17. Dim WshShell, objNet, objWMIService, strSubject, strBody
  18. Set WshShell = WScript.CreateObject ("WScript.Shell")
  19. Set objNet = WScript.CreateObject ("WScript.Network")
  20. strSubject = "Analysis of " & objNet.ComputerName & "."
  21. strBody = OS & vbNewLine & NicInfo
  22. SendMail "gogogadgetscott@hotmail.com", "gogogadgetscott@hotmail.com", strSubject, strBody
  23. Set objNet = Nothing
  24. Set WshShell = Nothing
  25. Sub SendMail(strTo, StrFrom, strSubject, strBody)
  26.   Dim iMsg, olApp
  27.   Set olApp = Wscript.CreateObject ("Outlook.Application")
  28.   Set iMsg = olApp.CreateItem(0)
  29.   With iMsg
  30.     .Recipients.Add(strTo)
  31.     .Subject = strSubject
  32.     .Body = strBody
  33.     .Display
  34.   End With
  35. End Sub
  36. Function OS()
  37.   Dim strComputer, colSettings, objOperatingSystem, objItem, objComputer, objBIOS, objProcessor
  38.   strComputer = "."
  39.   Set objWMIService = GetObject ("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
  40.   Set colSettings = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
  41.   OS = vbNewLine & "================ Operating System ================="
  42.   For Each objOperatingSystem In colSettings
  43.     OS = OS & vbNewLine & "OS Name: " & objOperatingSystem.Name
  44.     OS = OS & vbNewLine & "Version: " & objOperatingSystem.Version
  45.     OS = OS & vbNewLine & "Service Pack: " & objOperatingSystem.ServicePackMajorVersion & "." & objOperatingSystem.ServicePackMinorVersion
  46.     OS = OS & vbNewLine & "OS Manufacturer: " & objOperatingSystem.Manufacturer
  47.     OS = OS & vbNewLine & "Windows Directory: " & objOperatingSystem.WindowsDirectory
  48.     OS = OS & vbNewLine & "Locale: " & objOperatingSystem.Locale
  49.     OS = OS & vbNewLine & "Available Physical Memory: " & objOperatingSystem.FreePhysicalMemory
  50.     OS = OS & vbNewLine & "Total Virtual Memory: " & objOperatingSystem.TotalVirtualMemorySize
  51.     OS = OS & vbNewLine & "Available Virtual Memory: " & objOperatingSystem.FreeVirtualMemory
  52.     OS = OS & vbNewLine & "OS Name: " & objOperatingSystem.SizeStoredInPagingFiles
  53.   Next
  54.   Set colSettings = objWMIService.ExecQuery("Select * from Win32_DisplayConfiguration",,48)
  55.   OS = OS & vbNewLine & vbNewLine & "============== Display Configuration =============="
  56.   For Each objItem In colSettings
  57.     OS = OS & vbNewLine & "BitsPerPel: " & objItem.BitsPerPel
  58.     OS = OS & vbNewLine & "Caption: " & objItem.Caption
  59.     OS = OS & vbNewLine & "Description: " & objItem.Description
  60.     OS = OS & vbNewLine & "DeviceName: " & objItem.DeviceName
  61.     OS = OS & vbNewLine & "DisplayFlags: " & objItem.DisplayFlags
  62.     OS = OS & vbNewLine & "DisplayFrequency: " & objItem.DisplayFrequency
  63.     OS = OS & vbNewLine & "DitherType: " & objItem.DitherType
  64.     OS = OS & vbNewLine & "DriverVersion: " & objItem.DriverVersion
  65.     OS = OS & vbNewLine & "ICMIntent: " & objItem.ICMIntent
  66.     OS = OS & vbNewLine & "ICMMethod: " & objItem.ICMMethod
  67.     OS = OS & vbNewLine & "LogPixels: " & objItem.LogPixels
  68.     OS = OS & vbNewLine & "PelsHeight: " & objItem.PelsHeight
  69.     OS = OS & vbNewLine & "PelsWidth: " & objItem.PelsWidth
  70.     OS = OS & vbNewLine & "SettingID: " & objItem.SettingID
  71.     OS = OS & vbNewLine & "SpecificationVersion: " & objItem.SpecificationVersion
  72.   Next
  73.   OS = OS & vbNewLine & "Desktop Wallpaper: " &   WshShell.RegRead("HKCU\Control Panel\Desktop\Wallpaper")
  74.   Set colSettings = objWMIService.ExecQuery ("Select * from Win32_ComputerSystem")
  75.   OS = OS & vbNewLine & vbNewLine & "================= Computer System ================="
  76.   For Each objComputer In colSettings
  77.     OS = OS & vbNewLine & "System Name: " & objComputer.Name
  78.     OS = OS & vbNewLine & "System Manufacturer: " & objComputer.Manufacturer
  79.     OS = OS & vbNewLine & "System Model: " & objComputer.Model
  80.     OS = OS & vbNewLine & "Time Zone: " & objComputer.CurrentTimeZone
  81.     OS = OS & vbNewLine & "Total Physical Memory: " & objComputer.TotalPhysicalMemory
  82.   Next
  83.   Set colSettings = objWMIService.ExecQuery ("Select * from Win32_BIOS")
  84.   For Each objBIOS In colSettings
  85.     OS = OS & vbNewLine & "BIOS Version: " & objBIOS.Version
  86.   Next
  87.   Set colSettings = objWMIService.ExecQuery ("Select * from Win32_Processor")
  88.   OS = OS & vbNewLine & vbNewLine & "==================== Processor ===================="
  89.   For Each objProcessor In colSettings
  90.     OS = OS & vbNewLine & "System Type : " & objProcessor.Architecture
  91.     OS = OS & vbNewLine & "Processor: " & objProcessor.Description
  92.   Next
  93. End Function
  94. Function NicInfo()
  95.   Dim j, NIC1, Nic, StrNic, lngCount, StrIP, i
  96.   'Get a connection To the WMI NetAdapteConfig object
  97.   Set NIC1 = GetObject ("winmgmts:").InstancesOf("Win32_NetworkAdapterConfiguration")
  98.   'For Each of the NICs In the connection
  99.   For Each Nic In NIC1
  100.     'Get the Adapter Description
  101.     StrNIC = Nic.Description
  102.     'If IP Is enabled On the NIC Then Let 's find out about the NIC
  103.     If Nic.IPEnabled Then
  104.       lngCount=UBound (Nic.IPAddress)
  105.       For i=0 To lngCount
  106.         If i >= 0 Then
  107.           NicInfo = vbNewLine & "======= Network Adapter Configuration ============="
  108.           NicInfo = NicInfo & vbNewLine & StrNic & vbNewLine
  109.           StrIP = vbTab & Nic.IPAddress(i)
  110.           If StrIP <> "" Then
  111.             NicInfo = NicInfo & vbNewLine & vbTab & "IP Address = " & StrIP
  112.             NicInfo = NicInfo & vbNewLine & vbTab & "MAC Address = " & Nic.MACAddress
  113.             NicInfo = NicInfo & vbNewLine & vbTab & "NIC Service (Short) Name = " & Nic.ServiceName
  114.             NicInfo = NicInfo & vbNewLine & vbTab & "IP Subnet(s): "
  115.             For j = 0 To UBound (Nic.IPSubnet)
  116.               NicInfo = NicInfo & vbNewLine & vbTab & vbTab & Nic.IPSubnet(j)
  117.             Next
  118.             NicInfo = NicInfo & vbNewLine & vbTab & "Internet Database Files Path = " & Nic.DatabasePath
  119.             NicInfo = NicInfo & vbNewLine & vbTab & "Dead Gateway Detection = " & Nic.DeadGWDetectEnabled
  120.             NicInfo = NicInfo & vbNewLine & vbTab & "IP Gateway(s): "
  121.             If IsArray (Nic.DefaultIPGateway) Then
  122.               For j = 0 To UBound (Nic.DefaultIPGateway)
  123.                 NicInfo = NicInfo & vbNewLine & vbTab & vbTab & Nic.DefaultIPGateway(j)
  124.               Next
  125.             End If
  126.             If Nic.DHCPEnabled Then
  127.               NicInfo = NicInfo & vbNewLine & vbTab & "DHCP Assigned IP address = " & Nic.DHCPEnabled
  128.               NicInfo = NicInfo & vbNewLine & vbTab & "DHCP Server = " & Nic.DHCPServer
  129.             End If
  130.             NicInfo = NicInfo & vbNewLine & vbTab & "DNS For WINS Resolution Enabled = " & Nic.DNSEnabledforWINSResolution
  131.             NicInfo = NicInfo & vbNewLine & vbTab & "DNS Host Name = " & Nic.DNSHostName
  132.             NicInfo = NicInfo & vbNewLine & vbTab & "DNS Servers:"
  133.             If IsArray (Nic.DNSServerSearchOrder) Then
  134.               For j=0 To UBound (Nic.DNSServerSearchOrder)
  135.                 NicInfo = NicInfo & vbNewLine & vbTab & vbTab & Nic.DNSServerSearchOrder(j)
  136.               Next
  137.             End If
  138.             NicInfo = NicInfo & vbNewLine & vbTab & "IP Port Filtering Enabled = " & Nic.IPFilterSecurityEnabled
  139.             If Nic.IPFilterSecurityEnabled Then
  140.               NicInfo = NicInfo & vbNewLine & vbTab & "IP Filtering Enabled."
  141.               If Nic.IPSecPermitIPProtocols <> 0 Then
  142.                 For j=0 To UBound (Nic.IPSecPermitIPProtocols)
  143.                   NicInfo = NicInfo & vbNewLine & vbTab & vbTab & "Protocol: " & Nic.IPSecPermitIPProtocols(j)
  144.                 Next
  145.               Else
  146.                 NicInfo = NicInfo & vbNewLine & vbTab & vbTab & "No Protocols Filtered"
  147.               End If
  148.               If Nic.IPSecPermitTCPPorts <> 0 Then
  149.                 For j=0 To UBound (Nic.IPSecPermitTCPPorts)
  150.                   NicInfo = NicInfo & vbNewLine & vbTab & vbTab & "TCP Port: " & Nic.IPSecPermitTCPPorts(j)
  151.                 Next
  152.               Else
  153.                 NicInfo = NicInfo & vbNewLine & vbTab & vbTab & "No TCP Ports Filtered"
  154.               End If
  155.               If Nic.IPSecPermitUDPPorts <> 0 Then
  156.                 For j=0 To UBound (Nic.IPSecPermitUDPPorts)
  157.                   NicInfo = NicInfo & vbNewLine & vbTab & vbTab & "UDP Port: " & Nic.IPSecPermitUDPPorts(j)
  158.                 Next
  159.               Else
  160.                 NicInfo = NicInfo & vbNewLine & vbTab & vbTab & "No UDP Ports Filtered"
  161.               End If
  162.             End If
  163.             NicInfo = NicInfo & vbNewLine & vbTab & "LMHOSTS Lookup Enabled = " & Nic.WINSEnableLMHostsLookup
  164.             NicInfo = NicInfo & vbNewLine & vbTab & "WINS Lookup File = " & Nic.WINSHostLookupFile
  165.             NicInfo = NicInfo & vbNewLine & vbTab & "Primary WINS Server = " & Nic.WINSPrimaryServer
  166.             NicInfo = NicInfo & vbNewLine & vbTab & "Secondary WINS Server = " & Nic.WINSSecondaryServer
  167.             NicInfo = NicInfo & vbNewLine & vbTab & "WINS Scope ID = " & Nic.WINSScopeID
  168.           End If
  169.         End If
  170.       Next
  171.     End If
  172.   Next
  173. End Function

Download SendSysInfo (vbs file)