前回クエリを実行してからのエントリについて Win32_NTLogEvent をクエリしようとしています。スクリプトを実行するたびに変更できるように、文字列変数を使用してみました。しかし、生成されたコレクションに対して null が返されます。WMI DateTimes についてできることを調べ、それらを比較に使用しました。一見矛盾する情報をいくつか見つけましたが(つまり、人間が読み取れる情報を使用してUTCと直接比較するソースとそうでないソースがあります)。UTC 文字列と人間が読める文字列を試しました。しかし、どちらも機能していないようです。文字列と文字列ではなく、日時と日時を比較する必要があるためだと思います。多くの情報源は、この場合、文字列から文字列への変換が機能すると言っているようです。でも、たとえ私が正しいとしても、私は'
これが私のスクリプトの関連部分です。UTC に戻らなければならない場合に日付を再入力したくないので、コメントアウトされた UTC はそこにあります。
strTimeMin = "01/01/1970/0:00:00"
'19700101000000.000000-480
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
'Querying Event Logs
Set colLoggedEvents = objWMIService.ExecQuery _
("SELECT * FROM Win32_NTLogEvent WHERE Logfile = 'system' AND "_
& "Type = 'Error' AND TimeGenerated > " & strTimeMin & "")
助けてくれてありがとう!