【发布时间】:2017-01-07 14:23:21
【问题描述】:
我想分析一个特殊的 Windows 应用程序(Windows 7 Enterprise,64Bit)的事件日志。
我需要几秒钟前记录的特殊事件。
这是我的 VBScript 代码,它会产生完全错误的结果(错误的事件数量):
strComputer = "." '迪塞尔计算机
' 从事件日志中检索特定事件
设置 objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\" & strComputer & "\root\cimv2")
常量 CONVERT_TO_LOCAL_TIME = True
设置 dtmStartDate = CreateObject("WbemScripting.SWbemDateTime") 设置 dtmEndDate = CreateObject("WbemScripting.SWbemDateTime")
dtmStartDate.SetVarDate dateadd("s", -10, now()) ' CONVERT_TO_LOCAL_TIME dtmEndDate.SetVarDate now() ' CONVERT_TO_LOCAL_TIME
dim var_wql
var_wql = "SELECT * FROM Win32_NTLogEvent WHERE Logfile = '' AND SourceName = '' AND EventCode = '' AND (TimeWritten >= '" & dtmStartDate & "') AND (TimeWritten
设置 colLoggedEvents = objWMIService.ExecQuery(var_wql)
...
行数(anzahl = colLoggedEvents.count)必须为0或1,其他都不可能。
wql 语句有什么问题?我想检查过去的最后几秒(从现在开始)。
谢谢。
汤米
【问题讨论】:
标签: events logging vbscript wql