Exemplo de uso do script de automação de objetos

O script abaixo se conecta ao objeto de automação do Excel, cria uma nova planilha e exporta a lista de serviços e seus respectivos status. O script exige Excel e WMI.

Obs.

A Instrumentação de Gerenciamento do Windows vem instalada de fábrica no Windows 2000 e superior. Precisa ser instalada em Windows 9x e Windows NT. Link para baixar http://go.gfi.com/?pageid=_wmi

Function Main

Dim excel As Object ‘Criação de objetos exigida pelo script

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")

'Receber um objeto wmi quer permite recuperar várias informações

If wmiobj is Nothing Then

echo ("Erro1 Não é possível criar objeto WMI")

Else

Set excel = CreateObject("Excel.application")

'Conectar ao objeto de automação do Excel

If excel is Nothing Then

Echo(“Não é possível criar objeto Excel")

Else

'mostra versão do Excel

echo (“sessão iniciada com Excel versão "&excel.version)

'Adicionar pasta de trabalho

Set book = excel.workbooks.add

'Adicionar planilha à pasta de trabalho

Set sheet = Book.Worksheets.add

sheet.cells(1,1) = “Esta planilha foi gerada a partir de um script do GFI LanGuard"

'Setup Column names

sheet.cells(3,1) = “Nome do serviço"

sheet.cells(3,2) = “Estado"

sheet.cells(3,3) = “Início em"

'Recupera informações de serviço

Set wmiinst=wmiobj.instancesof("Win32_Service")

If wmiinst is Nothing Then

echo ("error2: Não é possível recuperar informações dos serviços")

Else

lnpos = 4

For Each objswbemobject In wmiinst

'Faz loop por todos os objetos de serviço

lnpos = lnpos + 1

sheet.cells(lnpos,1) = objswbemobject.DisplayName

'Insere serviços na próxima planilha Excel

sheet.cells(lnpos,2) = objswbemobject.State

sheet.cells(lnpos,3) = objswbemobject.Started

Next

'Ajusta as colunas automaticamente

sheet.columns.AutoFit

'Mostra a planilha do Excel

sheet.application.visible = true

End If

End If

End If

End Function