博客日历
2024年05月 | ||||||
一 | 二 | 三 | 四 | 五 | 六 | 七 |
29 | 30 | 1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 | 1 | 2 |
存档
2024年03月 04月 2021年
01月 02月 11月 12月 2020年
02月 03月 04月 05月 06月 07月
09月 2018年
09月 2017年
01月 02月 07月 2016年
01月 04月 07月 08月 11月 12月
2015年
01月 02月 03月 05月 09月 10月
11月 2014年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2013年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2012年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2011年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2010年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2009年
03月 04月 05月 06月 07月 08月
09月 10月 11月 12月
通过一个具体实例来理解WMI脚本编程-读取BIOS信息
Option Explicit
'WMI对象模型以及参考手册在MSDN2001中的位置:
'Platform SDK
' ->Setup and System Administration
' ->Windows Management Instrumentation
' ->WMI Reference
' ->Scripting API for WMI
'对于Visual Stdio 2008:
'ms-help://MS.VSCC.v90/MS.MSDNQTR.v90.chs/wmisdk/wmi/wmi_start_page.htm
'对于Visual Stdio 2008:
'ms-help://MS.VSCC.v90/MS.MSDNQTR.v90.chs/wmisdk/wmi/wmi_start_page.htm
'SWbemLocator类用来连接WMI,并返回WbemServices对象
Dim objSWbemLocator
Set objSWbemLocator=CreateObject("WbemScripting.SWbemLocator")
'WbemServices类用来执行命名空间下的各种操作
Dim objSWbemServices
'命名空间和类可以用WMI Object Browser来查看,WMI Object Browser是WMI Tools中的一部分。
'通过ConnectServer连接到本机(.)
'root\CIMV2命名空间下有Windows的各种软件,硬件信息
Set objSWbemServices=objSWbemLocator.ConnectServer(".","root\CIMV2")
'SWbemObjectSet类是SWbemObject对象的集合
Dim objSWbemObjectSet
'除了使用InstancesOf之外,还可以使用SWbemServices.ExecQuery方法,ExecQuery方法支持WQL查询语言。
'WQL查询语言具有与SQL一致的语法,非常强大
'我们可以形象的认为每个WMI对象都是一个数据库的“表”
'比如这里我们可以用"Select * From Win32_BIOS"。
Set objSWbemObjectSet=objSWbemServices.InstancesOf("Win32_BIOS")
Dim strBiosInfo
strBiosInfo=""
'SWbemObject用来表示一个WMI对象
'在这里它是一个Win32_BIOS实例,就是说objSWbemObject就是一个Win32_BIOS类的对象
Dim objSWbemObject
For Each objSWbemObject In objSWbemObjectSet
'下面我们输出Win32_BIOS的各种属性
strBiosInfo = strBiosInfo & "Name: " & objSWbemObject.Name & VbCrLf _
& "Manufacturer: " & objSWbemObject.Manufacturer & VbCrLf _
& "Version: " & objSWbemObject.Version & VbCrLf _
& "CurrentLanguage: " & objSWbemObject.CurrentLanguage
Next
WScript.Echo strBiosInfo
在我的系统上输出:
Name: Award Modular BIOS v6.00PG
Manufacturer: Award Software International, Inc.
Version: GBT - 42302e31
CurrentLanguage: n|US|iso8859-1
分类:脚本编程 查看次数:11836 发布时间:2009/6/1 10:58:18