网盛资源- 最新刷机包,救砖解锁,刷机工具教程,免费下载,安卓免费APP下载,源码资源,破解软件资源,辅助游戏工具

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4292|回复: 0

[Windows] 电脑配置采集并导出(用于资产统计)支持单机和网络存放

[复制链接]

1万

主题

6395

帖子

4万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
49067
发表于 2023-6-29 19:26:36 | 显示全部楼层 |阅读模式
由于工作需求需要对1000台以上的电脑做资产统计并导出excel,内容还要记录使用科室、使用人、出厂日期、过保日期等等,苦于无奈想偷懒只能编辑了个vbs脚本自动采集,此版本分单机版和网络版本。

注:运行的编号必须是5位数,多一个和少一个脚本会自动退出
脚本源码如下:
  1. ON ERROR RESUME NEXT
  2. Temp = 0
  3. Set WSHNetwork = WScript.CreateObject("WScript.Network")

  4. T1:

  5. UserName =InputBox("本工具用来收集终端硬件信息,不涉及任何个人及企业数据,请输入标签编号,计算机应以J开头的5位编码,打印机以D开头的5位编码", "请输入:")
  6.     if len(UserName)<>5 then WScript.Quit(0)

  7. depatment =InputBox("请输入部门信息", "请输入:")
  8. UserName1 =InputBox("请输入使用人的工号", "请输入:")
  9. position =InputBox("请输入位于的楼号信息", "请输入:")
  10. position1 =InputBox("请输入位于的楼层信息", "请输入:")
  11. position2 =InputBox("请输入位于的房间信息", "请输入:")
  12. TempFiles ="\\155.155.1.173\shares\zctj"& UserName &".csv"
  13. '网络路径请设置"\\155.155.1.173\shares\zctj\Local"
  14. printername =InputBox("请输入连接的打印机型号,多台打印机可用 | 分割,不能是逗号", "请输入:")
  15. set wshshell=wscript.createobject("wscript.shell")
  16. wshshell.run ("%comspec% /c regsvr32 /s scrrun.dll"),0,True
  17. wshshell.run ("%comspec% /c sc config  winmgmt start= auto"),0,True
  18. wshshell.run ("%comspec% /c net start winmgmt"),0
  19. Set WshNetwork = WScript.Createobject("WScript.Network")
  20. computername=WshNetwork.ComputerName

  21. Set FSO = CreateObject("Scripting.FileSystemObject")
  22. Set TempFile = FSO.CreateTextFile(TempFiles)
  23. strComputer = "."
  24. Set objWMIService = Getobject("winmgmts:\" & strComputer & "\root\cimv2")
  25.   
  26. Set CPU = objWMIService.ExecQuery("Select * From Win32_Processor")
  27. For Each Item In CPU
  28. CPU2 = Item.Name
  29. Next
  30.   
  31. Set Board = objWMIService.ExecQuery("Select * From Win32_BaseBoard")
  32. For Each Item In Board
  33. Board2 = Item.Manufacturer
  34. Board3 = Item.serialnumber
  35. if Item.serialnumber="" then Board3 =InputBox("无法自动获得主机SN,请输入主机SN", "请输入:")

  36. Next
  37.   
  38. Set colItems = objWMIService.ExecQuery("Select * From Win32_PhysicalMemory")
  39. For Each objItem In colItems
  40. A = objItem.Capacity/1073741824
  41. Temp = temp+objItem.Capacity
  42. N = N+1
  43. Next
  44. Memory = Temp/1073741824

  45. Memory2 = Memory


  46. Set Disk = objWMIService.ExecQuery("Select * From Win32_DiskDrive")
  47. For Each Item In Disk
  48. Disk2 = Disk2 & Item.Model & "("& Round(Item.Size/1000000000) & "G)   "
  49. Next
  50. Disk3 = Trim(Disk2)

  51. Function GetIPMAC(ComputerName)
  52. Dim objWMIService,colItems,objItem,objAddress
  53. Set objWMIService = GetObject("winmgmts://" & ComputerName & "/root/cimv2")
  54. Set colItems = objWMIService.ExecQuery("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")
  55. For Each objItem in colItems
  56. For Each objAddress in objItem.IPAddress
  57.   If objAddress <> "" then
  58.   GetIPMAC = objAddress & "," & objItem.MACAddress
  59.   Exit For
  60. End If
  61. Next
  62. Exit For
  63. Next
  64. End Function

  65. Set os = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
  66. For Each Item in os
  67. os= Item.Caption
  68. Next
  69. Set colItems = objWMIService.ExecQuery("Select * from Win32_VideoController", , 48)
  70. J = 0
  71.     For Each objItem In colItems
  72.      If J = 0 Then video2 =   (Trim(objItem.Caption) & (objItem.VideoModeDescription)) Else video3 =    (Trim(objItem.Caption) & (objItem.VideoModeDescription))
  73.     J = J + 1
  74.     Video2 = "Video Card:" & Item.Description
  75. Next
  76. Set colItems = objWMIService.ExecQuery("Select * from Win32_BIOS", , 48)
  77.     For Each objItem In colItems
  78.     OpDate=objItem.ReleaseDate
  79.     OpDate1=left(OpDate,8)
  80. Next

  81. Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem",,48)
  82.     For Each objItem in colItems
  83.     Model=objItem.Model
  84. Next

  85. Set colItems = objWMIService.ExecQuery("Select * from Win32_BIOS", , 48)
  86.     For Each objItem in colItems
  87.     SSN=objItem.SerialNumber
  88. Next
  89. leixin="台式机"

  90. TempFile.WriteLine("编号,部门,用户,楼号,楼层,房间号,打印机,计算机名,操作系统,处理器,内存,磁盘,IP地址,MAC地址,显卡,制造厂商,序列号,型号,出厂日期,类型,采集时间")
  91. TempFile.WriteLine(UserName&","&depatment&","&UserName1&","&position&","&position1&","&position2&","&printername&","&computername&","&os&","&CPU2&","&Memory2&","&Disk3&","&GetIPMAC(".")&","&Video2&video3&","&Board2&","&SSN&","&Model&","&OpDate1&","&leixin&","&now())
  92. TempFile.Close

  93. set ws=createobject("wscript.shell")
  94. ws.run TempFiles,x,ture
复制代码
111233tvz12zv400v0i0ln.jpg

脚本运行界面如下:


111346xe1f55f15775y8om.jpg 111352sn04r4v64jgvzpg4.jpg 111400mq5q9dqqqn5tqzqg.jpg 111408trkmvono2kza5t22.jpg 111414xf7k7fz4t1rnjkpq.jpg 111420msq7pyp0s5b50tsy.jpg 111426n272mmmg20mmr78q.jpg

游客,如果您要查看本帖隐藏内容请回复

--来自百度网盘超级会员V9的分享

小弟还差34积分就能升级,希望大家点赞收藏一下,不胜感激!


最终呈现的效果是在文件夹目录下生成一个J0001.CSV的文件,文件内容如图所示:
111549jfp33f93tb6ahiw5.jpg 111629qy6wgpwrl18yry6a.jpg 112825tjeewufl3gcogmc3.jpg
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|小黑屋|网盛资源论坛 ( 粤ICP备2022085098号 )|网站地图

GMT+8, 2026-11-13 13:30 , Processed in 0.176151 second(s), 29 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表