自动化对象脚本的使用示例
以下脚本连接了 excel 自动化对象,创建了新表,并导出了服务列表及其各自的状态。 该脚本需要 Excel 和 WMI。
注
需要在 Windows 2000 以上的版本中预先安装 Windows Management Instrumentation。 必须将其安装在 Windows 9x 和 Windows NT 上。下载链接:http://go.gfi.com/?pageid=_wmi
函数 Main
将 excel 作为脚本所需要的创建对象
Dim book As Object
Dim sheet As Object
Dim range As Object
Dim columns As Object
Dim wmiobj As Object
Dim objswbemobject As Object
strComputer = "127.0.0.1"
Set wmiobj = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
'获取允许检索各种信息的 wmi 对象
If wmiobj is Nothing Then
echo ("Error1 无法创建 WMI 对象")
Else
Set excel = CreateObject("Excel.application")
'连接到 Excel 自动化对象
If excel is Nothing Then
Echo("无法创建 Excel 对象")
Else
'显示 excel 的版本
echo ("initalised session with Excel Version "&excel.version)
'添加工作簿
Set book = excel.workbooks.add
'向工作簿中添加工作表
Set sheet = Book.Worksheets.add
sheet.cells(1,1) = "This Sheet has been generated from with a GFI LanGuard Script"
'设置列名称
sheet.cells(3,1) = "服务名称"
sheet.cells(3,2) = "State"
sheet.cells(3,3) = "Started"
'检索服务信息
Set wmiinst=wmiobj.instancesof("Win32_Service")
If wmiinst is Nothing Then
echo ("error2: 无法检索服务信息")
Else
lnpos = 4
For Each objswbemobject In wmiinst
'循环所有服务对象
lnpos = lnpos + 1
sheet.cells(lnpos,1) = objswbemobject.DisplayName
'将服务信息输入到 excel 表中
sheet.cells(lnpos,2) = objswbemobject.State
sheet.cells(lnpos,3) = objswbemobject.Started
Next
'自动适配列
sheet.columns.AutoFit
'显示 excel 表
sheet.application.visible = true
End If
End If
End If
End 函数