Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3096 / 76735 ←次へ | 前へ→

【79276】WMIを利用したWindowsイベントログの取得
質問  ギケン E-MAIL  - 17/6/26(月) 15:09 -

引用なし
パスワード
   はじめまして。

勤怠管理用(出勤簿)にWindowsの開始時間、シャットダウン時間を取得しようとしています。

Windowsの「システムログ」からイベントIDの「12(Windowsの開始)」と「13(Windowsのシャットダウン)」日時を一覧(一ヶ月分)で取得したいです。

出勤簿の処理に使用しますので、「指定日時」〜「指定日時」の一ヶ月間のログが欲しいのです。

現状、以下ページを参考に取得を試みました。

http://vba−geek.jp/blogーentry−314.html

実行した結果、ログは取得出来るのですが「すべてのログ」が「1日分だけ」取得されます。

処理完了までの時間も長いです。

ログが4000~5000行ある中で必要なのは2行だけですので、なんとかピンポイントでその2行だけ取得したいです。


WMIオブジェクトの参照
Set objWMIService = GetObject("winmgmts:" _
  & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

イベントログの抽出条件(日付指定のみ)を指定したSQLを実行
Set colEvents = objWMIService.ExecQuery _
  ("Select * from Win32_NTLogEvent Where TimeWritten >= '" & utcStartDate & "'")


↑このあたりを修正するのかなと思いましたが、試した限り上手く行きませんでした。

結構ググりましたが情報見つけること出来ず、手持ちの資料にもWMIについて記載されたものありませんでしたので質問させていただきました。

もしおわかりになられる方がいらっしゃればご教示頂きたく、もしくはヒント頂けるだけでもありがたいので、よろしくお願いいたします。

0 hits

【79276】WMIを利用したWindowsイベントログの取得 ギケン 17/6/26(月) 15:09 質問[未読]
【79277】Re:WMIを利用したWindowsイベントログの取得 hatena 17/6/26(月) 22:02 回答[未読]
【79278】Re:WMIを利用したWindowsイベントログの取得 ギケン 17/6/27(火) 9:26 お礼[未読]

3096 / 76735 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free