VBS收集電腦配置信息

以下是VBS代碼收集電腦硬件配置信息的代碼(CSV列表生成的形式):
注意文件存儲路徑的修改,可存儲在共享,也可以本地!
要注意360的屏蔽,這個同樣可以寫入SQL!在後面部分稍加修改即可,有需要可以留言!

ON ERROR RESUME NEXT
Temp = 0
Set WSHNetwork = WScript.CreateObject("WScript.Network")
UserName =InputBox("本次爲IT收集公司電腦資產,不涉及其他信息收集,請輸入此電腦所屬人員,如已收集,請點擊取消!如有疑問,請聯繫IT", "輸入")
TempFiles ="\\sec.infiled.ad\Public\公共文件\電腦配置信息收集\市場部\"& UserName &".csv"
*"\\sec.infiled.ad\Public\公共文件\電腦配置信息收集\市場部\"本部分爲文件生成路徑,可自行修改*
set wshshell=wscript.createobject("wscript.shell")
wshshell.run ("%comspec% /c regsvr32 /s scrrun.dll"),0,True
wshshell.run ("%comspec% /c sc config  winmgmt start= auto"),0,True
wshshell.run ("%comspec% /c net start winmgmt"),0
Set WshNetwork = WScript.Createobject("WScript.Network")
computername=WshNetwork.ComputerName

Set FSO = CreateObject("Scripting.FileSystemObject")
Set TempFile = FSO.CreateTextFile(TempFiles)
strComputer = "."
Set objWMIService = Getobject("winmgmts:\\" & strComputer & "\root\cimv2")
 
Set CPU = objWMIService.ExecQuery("Select * From Win32_Processor")
For Each Item In CPU
CPU2 = "CPU:" & Item.Name
Next
 
Set Board = objWMIService.ExecQuery("Select * From Win32_BaseBoard")
For Each Item In Board
Board2 = "主板: " & Item.Manufacturer & Item.Product
Next
 
Set colItems = objWMIService.ExecQuery("Select * From Win32_PhysicalMemory")
For Each objItem In colItems
A = objItem.Capacity/1073741824
Temp = temp+objItem.Capacity
N = N+1
Next
Memory = Temp/1073741824
If N = 1 Then
Memory2 = "內存: " & N & "條" & A & "G"
Else
Memory2 = "內存: " & N & "條" & A & "G" &" 總計" & Memory & "G"
End If

Set Disk = objWMIService.ExecQuery("Select * From Win32_DiskDrive")
For Each Item In Disk
Disk2 = Disk2 & Item.Model & "("& Round(Item.Size/1000000000) & "G)   "
Next
Disk3 = "硬盤: " & Trim(Disk2)

Function GetIPMAC(ComputerName) 
Dim objWMIService,colItems,objItem,objAddress
Set objWMIService = GetObject("winmgmts://" & ComputerName & "/root/cimv2")
Set colItems = objWMIService.ExecQuery("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")
For Each objItem in colItems
 For Each objAddress in objItem.IPAddress
  If objAddress <> "" then
  GetIPMAC = objAddress & ",MAC:" & objItem.MACAddress
  Exit For
 End If  
 Next
 Exit For
Next
End Function

Set os = objWMIService.ExecQuery("Select * from Win32_OperatingSystem") 
For Each Item in os
os= "OS: " & Item.Caption
Next
Set colItems = objWMIService.ExecQuery("Select * from Win32_VideoController", , 48)
 J = 0
    For Each objItem In colItems
     If J = 0 Then video2 =   (Trim(objItem.Caption) & (objItem.VideoModeDescription)) Else video3 =    (Trim(objItem.Caption) & (objItem.VideoModeDescription))
    J = J + 1
	Video2 = "顯卡: " & Item.Description
Next

TempFile.WriteLine("UserName,Computername,OS,CPU,內存,硬盤,IP地址,MAC地址,顯卡,主板")
TempFile.WriteLine(UserName&","&computername&","&os&","&CPU2&","&Memory2&","&Disk3&","&GetIPMAC(".")&","&Video2&video3&","&Board2)
TempFile.Close
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章