vb 一个是检测主机信息的,另一个是检测硬盘总容量的,如何整理在一块一起输出。

第一个:
On Error Resume Next
temp = 0
'Set wshshell = WScript.CreateObject("wscript.shell")
'启动WMI服务(没有这个服务就不行)
'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")
tempfilter = "c:\" & 1 & ".txt"
'这里是硬件信息纪录的存放位置,可以是网络共享路径(需有写入权限)
Set tempfile = fso.createtextfile(tempfilter)

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
'主板
Set board = objWMIService.execquery("select * from win32_baseboard")
For Each Item In board
board2 = "主板:" & Item.Product
Next
'CPU
Set cpu = objWMIService.execquery("select * from win32_processor")
For Each Item In cpu
cpu2 = "CPU:" & Item.Name
Next
'内存
Set colItems = objWMIService.execquery("Select * from Win32_PhysicalMemory", , 48)
For Each objItem In colItems
a = objItem.capacity / 1048576
temp = temp + objItem.capacity
n = n + 1
Next
memory = temp / 1048576
If n = 1 Then
memory2 = "内存: " & n & "条" & a & "M"
Else
memory2 = "内存: " & n & "条" & a & "M" & " 总计" & memory & "M"
End If
'硬盘
Set disk = objWMIService.execquery("select * from win32_diskdrive")
For Each Item In disk
disk2 = "硬盘: " & Item.Model
Next
For Each objquerycomputer In objcomputers
disk2 = "硬盘总容量" & Fix(objquerycomputer.Size / 1000000000) & "G"
Next
'显卡
Set video = objWMIService.execquery("select * from win32_videocontroller", , 48)
For Each Item In video
video2 = "显卡: " & Item.Description
Next
'网卡
Set colItems = objWMIService.execquery("Select * from Win32_NetworkAdapter", , 48)
For Each objItem In colItems
If (Left(objItem.NetConnectionID, 4) = "本地连接") Then
lanname = objItem.Name
End If
Next
lan2 = "网卡: " & lanname

tempfile.writeline (board2)
tempfile.writeline (cpu2)
tempfile.writeline (memory2)
tempfile.writeline (disk2)
tempfile.writeline (video2)
tempfile.writeline (lan2)
第二个
Set objservice = GetObject("winmgmts:\\.\root\cimv2")
Set objcomputers = objservice.execquery("select * from win32_diskdrive")
For Each objquerycomputer In objcomputers
Text1.Text = "硬盘总容量" & Fix(objquerycomputer.Size / 1000000000) & "G"
Next
Open "c:\1.txt" For Append As #1
Print #1, Text1.Text
Close #1

On Error Resume Next
temp = 0
' Set wshshell = WScript.CreateObject("wscript.shell")
'启动WMI服务(没有这个服务就不行)
'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 = CreateObject("WScript.Network")
computername = WshNetwork.computername

Set fso = CreateObject("scripting.filesystemobject")
tempfilter = "D:\" & 1 & ".txt"
'这里是硬件信息纪录的存放位置,可以是网络共享路径(需有写入权限)
Set tempfile = fso.createtextfile(tempfilter)

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
'主板
Set board = objWMIService.execquery("select * from win32_baseboard")
For Each Item In board
board2 = "主板:" & Item.Product
Next
'CPU
Set cpu = objWMIService.execquery("select * from win32_processor")
For Each Item In cpu
cpu2 = "CPU:" & Item.Name
Next
'内存
Set colItems = objWMIService.execquery("Select * from Win32_PhysicalMemory", , 48)
For Each objItem In colItems
a = objItem.capacity / 1048576
temp = temp + objItem.capacity
n = n + 1
Next
memory = temp / 1048576
If n = 1 Then
memory2 = "内存: " & n & "条" & a & "M"
Else
memory2 = "内存: " & n & "条" & a & "M" & " 总计" & memory & "M"
End If
'硬盘
Set disk = objWMIService.execquery("select * from win32_diskdrive")
For Each Item In disk
disk2 = "硬盘: " & Item.Model
Next
Set objservice = GetObject("winmgmts:\\.\root\cimv2")
Set objcomputers = objservice.execquery("select * from win32_diskdrive")

For Each objquerycomputer In objcomputers
disk2 = disk2 & vbCrLf & "硬盘总容量" & Fix(objquerycomputer.Size / 1000000000) & "G"
Next
'显卡
Set video = objWMIService.execquery("select * from win32_videocontroller", , 48)
For Each Item In video
video2 = "显卡: " & Item.Description
Next
'网卡
Set colItems = objWMIService.execquery("Select * from Win32_NetworkAdapter", , 48)
For Each objItem In colItems
If (Left(objItem.NetConnectionID, 4) = "本地连接") Then
lanname = objItem.Name
End If
Next
lan2 = "网卡: " & lanname

tempfile.writeline (board2)
tempfile.writeline (cpu2)
tempfile.writeline (memory2)
tempfile.writeline (disk2)
tempfile.writeline (video2)
tempfile.writeline (lan2)
tempfile.Close追问

我试过不行

追答

我试过可以,你要把wmi服务打开

追问

还能简化吗?能把显卡的显存也检测出来吗?

追答

做一个循环之类的,不过代码执行过程还是要这么多,简化只是更好看一点而已
显卡的显存也能读出来,在后面添加这个AdapterRAM属性就行了,注意,读出来的属性是字节,要化成MB的话要除于1024×1024,下面是显存的语句
video2 = video2 & "显存 :" & Item.AdapterRAM

温馨提示:内容为网友见解,仅供参考
无其他回答

vb 一个是检测主机信息的,另一个是检测硬盘总容量的,如何整理在一块一...
'wshshell.run ("%comspec% \/c net start winmgmt"), 0 '用一个文本来记录硬件信息 Set WshNetwork = CreateObject("WScript.Network")computername = WshNetwork.computername Set fso = CreateObject("scripting.filesystemobject")tempfilter = "D:\\" & 1 & ".txt"'这里是硬件信息纪录的存放位置...

求一个可以检测电脑硬件的工具<详细内容请进!> (100分)
1、EVEREST Home 2.00.327 Beta(本人置顶推荐的检测软件) 说明:EVEREST(原名AIDA32)一个测试软硬件系统信息的工具,它可以详细的显示出PC每一个方面的信息。支持上千种(3400+)主板,支持上百种(360+)显卡,支持对并口\/串口\/USB这些PNP设备的检测,支持对各式各样的处理器的侦测。新版增加查看远程系统信息和管理,结果...

nod32是哪个国家的杀毒软件,很好吗
四、获得奖项 NOD32已经获得超过60多项奖项,包括45次获得Virus Bulletin VB100% 的奖项,CheckMark Level 1,2, Trojan, Spyware, ICSA Certified, PCMagazine, PCUser, IDG Infoworld, UK Consumer Association Best Buy, mikroDatorn, WINTOTAL, Deloitte&Touche Fast 50, ISO9001等。 已赞过 已踩过< 你对...

给我一个电脑学习方向吧
十三、WIN系统安装:1、新硬盘分区FDISK;2、硬盘高格FORMAT;3、驱动程序安装;4、应用软件安装;5、WIN系统优化;十四、硬件选用与故障处理:1、CPU滑位与降频、锁频、超频技巧;2、主板CMOS问题;3、BIOS升级复位;4、内存防伪、检测故障处理;5、硬盘原理、优选修复坏区、挽救数据、超频、低格DM软件分区与高格;6、显示器...

电脑数控系统计算机数控系统是一种包含什么在内的什么
第二个问题,系统软件程序可以固化在硬盘,现在已经有很多应用在windows平台上的数控系统。例如:西门子的840D、马扎克的数控系统等。普通电脑改造数控不需要改什么硬件,但是普通电脑的稳定性差,不能长期工作在恶劣环境下。还有就是接口问题不好解决,数控的接口比较特殊,和普通电脑难以兼容。2. 数控系统是...

电脑有些软件电脑的必备软件有哪些
1、文字处理软件 用于输入、存贮、修改、编辑、打印文字材料等,例如WORD、WPS等。 2、信息管理软件 用于输入、存贮、修改、检索各种信息,例如工资管理软件、人事管理软件、仓库管理软件、计划管理软件等。这种软件发展到一定水平后,各个单项的软件相互连系起来,计算机和管理人员组成一个和谐的整体,各种信息在其中合理...

有个恶心的病毒,其中一个文件就是windds32.dll,请教大家如何把这个病毒...
主页病毒的附件并非一个HTML文档,而是一个恶意的VB脚本程序,一旦执行后,就会向用户地址簿中的所有电子邮件地址发送带毒的电子邮件副本。 危害多样化 传统的病毒主要攻击单机,而“红色代码”和“尼姆达”都会造成网络拥堵甚至瘫痪,直接危害到了网络系统;另一个危害来自病毒在受害者身上开了后门,对某些部门而言,开启了...

最省电的台式电脑什么配置的电脑省电
故障现象:电脑卡硬盘坏道 1、定期清理系统垃圾,电脑使用时间久了,会产生大量的系统垃圾,以及卸载残留物,如果累积到一定程度后会发现笔记本越来越卡。 解决方法:通过电脑管家全面检测清理垃圾,以及把不必要的后台运行程序程序给禁用。养成定期清理的习惯。 2、使用笔记本电脑免不了磁盘直接的数据转移,时间一长硬盘可能存在...

软件与硬件是怎么结合的
也可以是一个由众多独立程序组成的庞大的软件系统,比如数据库管理系统。 ★较常见的应用软件有: 行业管理软件 :如电脑行业管理软件开龙IT200 、商软ERP等; 文字处理软件 :如Office、 openoffice、 WPS、永中office等 ; 信息管理软件 :如Assces数据库、mysql数据库等; 辅助设计软件 :如AutoCAD、caxa、Photoshop 、...

如何构建一个完善的数据库,如何来处理表与表关系.
SQL Server本身就是一个完善的数据库,提供可视化编程,后台完成所有拖放处理操作,不管有没有数据都可以使用,不需要编译。一个比较合理的数据库设计应该考虑数据的交互性和挖掘能力、处理效率以及日志记录。建立数据表,注意以下几点:表建立的时候要有主键和索引,表与表之间要能使用主键相联系,举例说在A...

相似回答