VBA Skript zum Auslesen der Ereignisanzeige

  • #1
T

tobman112

Aktives Mitglied
Themenersteller
Dabei seit
24.07.2005
Beiträge
38
Reaktionspunkte
0
Ort
Wanne-Eickel
Hallo Gemeinde,

ich habe im Internet ein VBA SKript zum Auslesen der Ereignisanzeige gefunden. Das funktioniert soweit auch sehr gut, ich würde es nur gerne in 2 Punkten angepasst haben:

a) Es soll nicht nur die Sparte System sondern auch Anwendungen auslesen
b) Es soll nicht die komplette Datei, sondern immer die Daten des Vortages ausgelesen werden.

Ziel ist es, die txt Datei täglich per Mail zu versenden.

Da ich ein totaler Neuling auf diesem Gebiet bin, bitte ich diese DAU-Fragen :1 zu entschuldigen.

Gruß
Tobman

-----
' Region Description
'
' Name:
' Author: Gerhard Kuklau
' Version: 0.1
' Description: xxx
'
' Powered by SystemScripter 6.0
' EndRegion


' List All Events from an Event Log
' supported on: Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003
' not supported on: Windows 9x
strComputer = .
Set objWMIService = GetObject(winmgmts: _
& \\ & strComputer & \root\cimv2)

Set colLoggedEvents = objWMIService.ExecQuery _
(Select * from Win32_NTLogEvent Where Logfile =->Security')

For Each objEvent In colLoggedEvents
WScript.Echo Category: & objEvent.Category
WScript.Echo Computer Name: & objEvent.ComputerName
WScript.Echo Event Code: & objEvent.EventCode
WScript.Echo Message: & objEvent.Message
WScript.Echo Record Number: & objEvent.RecordNumber
WScript.Echo Source Name: & objEvent.SourceName
WScript.Echo Time Written: & objEvent.TimeWritten
WScript.Echo Event Type: & objEvent.Type
WScript.Echo User: & objEvent.User
Next
 
  • #2
Hallo,

hab mit mal paar Gedanken gemacht, da ich selber auch so ein Script gebrauchen kann - also :

> VBS-Script
> mögliche LogFiles:->System' ;->Application' ;->Security'

Problem mit dem Vortag löst sich folgendermaßen :
Gestern = DateAdd( d, -1, Date )

Leider befinden sich die Zeitangaben des Scripts (objEvent.TimeWritten) in keinem normalen Format.
(20060609000353.000000+120)

So wird die Anordnung von->Gestern' noch bissl umgebaut und eine Vergleichsvariable geschaffen :

Vgl = Right(Gestern,4) & Mid(Gestern,4,2) & Left(Gestern,2)
-> entspricht nur dem Datum im Format->20060609'

Also :
----------------------------------------
' Region Description
'
' Name:
' Author: Gerhard Kuklau
' Version: 0.1
' Description: xxx
'
' Powered by SystemScripter 6.0
' EndRegion


Gestern = DateAdd( d, -1, Date )
Vgl = Right(Gestern,4) & Mid(Gestern,4,2) & Left(Gestern,2)


strComputer = .
Set objWMIService = GetObject(winmgmts: _
& \\ & strComputer & \root\cimv2)

Set colLoggedEvents = objWMIService.ExecQuery _
(Select * from Win32_NTLogEvent Where Logfile =->System') ->Application, Security, System


For Each objEvent In colLoggedEvents
If Left( objEvent.TimeWritten, 8 ) = Vgl Then
WScript.Echo Category: & objEvent.Category
WScript.Echo Computer Name: & objEvent.ComputerName
WScript.Echo Event Code: & objEvent.EventCode
WScript.Echo Message: & objEvent.Message
WScript.Echo Record Number: & objEvent.RecordNumber
WScript.Echo Source Name: & objEvent.SourceName
WScript.Echo Time Written: & objEvent.TimeWritten
WScript.Echo Event Type: & objEvent.Type
WScript.Echo User: & objEvent.User
WScript.Echo -------------------------------------------------------------------------------
End If
Next

WScript.Quit(0)

----------------------------------------VBS Datei Ende------------------------------------------------

Um die anderen LogFiles abzufragen, einfach->System' durch->Security' /->Application' ersetzen.



Grüße
 
  • #3
Hallo,

ich habe mit diesem Ansatz versucht, die Ereignisse aus dem Logfile->Security' zu lesen, was aber nicht funktioniert.

Bei mir stehen nur in->Application' und->Process Management System' Ereignisse.

Wäre dankbar, wenn mir jemand weiterhelfen könnte.

Grüße

Joachim
 
Thema:

VBA Skript zum Auslesen der Ereignisanzeige

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben