
VB可以使用Windows管理设备(WMI)进行读取计算机硬件信息。
Dim s, System, item
Dim i As Integer
Set System = GetObject("winmgmts:")InstancesOf("Win32_ComputerSystem")
For Each item In System
‘List1AddItem itemcputype
s = "Computer Info" & vbCrLf
s = s & "" & vbCrLf
s = s & "计算机名称: " & itemname & vbCrLf
s = s & "状态: " & itemStatus & vbCrLf
s = s & "类型: " & itemSystemType & vbCrLf
s = s & "生产厂家: " & itemManufacturer & vbCrLf
s = s & "型号: " & itemModel & vbCrLf
s = s & "内存: ~" & itemtotalPhysicalMemory \ 1024000 & "mb" & vbCrLf
s = s & "域: " & itemdomain & vbCrLf
‘s = s & "工作组" & itemWorkgroup & vbCrLf ‘获得工作组和域的选项不能同时用
s = s & "当前用户: " & itemusername & vbCrLf
s = s & "启动状态" & itemBootupState & vbCrLf
s = s & "该计算机属于" & itemPrimaryOwnerName & vbCrLf
s = s & "系统类型" & itemCreationClassName & vbCrLf
s = s & "计算机类类型" & itemDescription & vbCrLf
For i = 0 To 1 ‘这里假设安装了两个系统
s = s & Chr(5) & "启动选项" & i & " :" & itemSystemStartupOptions(i) _
& vbCrLf
Next i
Next
Text1Text = s
运行上面的代码后,在textBox中就可以显示计算机的信息。
在上面的代码中,程序通过GetObject("winmgmts:")获得WMI对象,然后获得下面的
Win32_ComputerSystem子项并通过访问Win32_ComputerSystem对象中的分项获得系统中的信息。
需要说明的是,并不是所有的系统都支持WMI,在有些系统中无法显示生产厂家等信息。
WMI是Windows 2K/XP管理系统的核心,对于其他的Win32 *** 作系统,WMI是一个有用的插件。
WMI的作用是:
①通过它可以访问、配置、管理和监视几乎所有的Windows资源,比如用户可以在远程计算机器上启动一个进程。
②设定一个在特定日期和时间运行的进程。
③远程启动计算机。
④获得本地或远程计算机的已安装程序列表。
⑤查询本地或远程计算机的Windows事件日志等等。
扩展资料:
一般情况下,在本地计算机上执行的WMI *** 作也可以在远程计算机上执行,只要用户拥有该计算机的管理员权限。如果用户对远程计算机拥有权限并且远程计算机支持远程访问,那么用户就可以连接到该远程计算机并执行拥有相应权限的 *** 作。
WMI能够成为远程控制下的一个合法通道,有了这个通道,入侵者不需要对自己进行伪装,不必再为探测出对方账号的密码为空后,找不到连接对方系统的通道而发愁。只要进行简单几个步骤就可以轻易地入侵到别人的电脑中。
参考资料:
有这个必有吗!?wmic能做到的vbs也能做到
----------vbs 获取Wmic Process Get ProcessId,ExecutablePath执行结果代码开始-----------------
Dim WshShell, oExec
Set WshShell = CreateObject("WScriptShell")
Set oExec = WshShellExec("%comspec% /c Wmic Process Get ProcessId,ExecutablePath")
Function ReadAllFromAny(oExec)
If Not oExecStdOutAtEndOfStream Then
ReadAllFromAny = oExecStdOutReadAll
Exit Function
End If
If Not oExecStdErrAtEndOfStream Then
ReadAllFromAny = oExecStdErrReadAll
Exit Function
End If
ReadAllFromAny = -1
End Function
Dim allInput, tryCount
allInput = ""
tryCount = 0
Do While True
Dim input
input = ReadAllFromAny(oExec)
If -1 = input Then
If tryCount > 10 And oExecStatus = 1 Then
Exit Do
End If
tryCount = tryCount + 1
WScriptSleep 100
Else
allInput = allInput & input
tryCount = 0
End If
Loop
If oExecExitCode <> 0 Then
WScriptEcho "警告:CMD返回值非0"
End If
WScriptEcho allInput
---------------------------------------------------代码结束-----------------------------------------------------
而用vbs Wmi获取进程代码很简洁
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''vbs Wmi获取进程代码开始''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim Wmi
Set Wmi = GetObject("Winmgmts:{impersonationLevel=impersonate}!\\\root\cimv2")
Set A = WmiExecquery("Select From Win32_Process")
For Each B In A
WscriptEcho BExecutablePath &vbTab& BProcessId
Next
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''代码结束'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
这个应该是在WINDOWS下如何获取系统各进程的CPU使用率的。
1、可以按“ctr+alt+del”组合键就会d出电脑任务管理的窗口,下方即可显示cpu的使用率。
2、选择资源监视器,在性能监视器里面,可以看到cpu的使用进程。
以上就是关于请教,如何用VB获取计算机硬件信息全部的内容,包括:请教,如何用VB获取计算机硬件信息、什么是WMI 有什么用、vbs中如何获取wmic命令的输出结果等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)