みなさん、こんにちは。
WMI と WQL を使用してイベントログ エントリを取得しようとしています。
適切なソース名などを使用して適切なログを取得できますが、過去 5 分から 10 分間の結果のみを取得する選択クエリを作成できます。
ここに私のクエリがあります:
以下は、私のスクリプトからの抜粋です。
Dim dtmStart, dtmEnd, sDate, ...
私は実際に日付の配列を持っていて、一日中ログオン/オフ/ロック解除イベントを探していました. それで、そこから完全な開始日と終了日を作成しました。
年月日は入れませんが、sDate = 10100608 のように定義できます。
dtmStart = sDate + "000000.000000-420" '0hr on the date in question.
dtmEnd = sDate + "235900.000000-420" ' 23:59 on the date in question
(ここでは UTC オフセットが分単位であることに注意してください - 北アメリカでは 420 日のライトセービング時間です。)
Set colEvents = oWMIService.ExecQuery _
("SELECT * FROM Win32_NTLogEvent WHERE Logfile = 'Security' AND " _
& "TimeWritten >= '" & dtmStart & "' AND TimeWritten < '" _
& dtmEnd & "' AND " _
& "(EventCode = '528' OR EventCode = '540' OR EventCode = '538')")
' Query for events during the time range we're looking for.
マイク、
あなたの質問を見せてください。通常、時間形式は次のようなものです
20100608100000.000000-300
WQL の DateTime 形式の詳細については、こちらを参照してください