- PR -

イベントログ読み込み方法(2038年問題)

1
投稿者投稿内容
スパイク
常連さん
会議室デビュー日: 2002/07/05
投稿数: 24
投稿日時: 2004-06-07 15:14
私はイベントログの読み込みを以下のAPIを使って行っています。
・OpenEventLog()
・ReadEventLog()
・CloseEventLog()
これでReadEventLog()で取得できるEVENTLOGRECORD構造体の以下のメンバをもとに
日付を表示しています。
DWORD TimeGenerated;
DWORDが4バイトのため、2038年以降はあふれて正しく表示できません。
イベントビューアは2038年以降でも問題なく表示できているので、
情報元(%windir%system32\config\*.evt)は正しい値を保持していると思います。
**EventLog()とは別のAPIがあるのかと探しましたが、見つかりませんでした。

何かよい対処方法はないでしょうか?
よろしくお願いします。


ぢゃん♪
大ベテラン
会議室デビュー日: 2003/06/12
投稿数: 208
お住まい・勤務地: 都内
投稿日時: 2004-06-07 15:29
System.Diagnostics.EventLog クラスEntries プロパティで取得できるEventLogEntry メンバは、どうですか。
スパイク
常連さん
会議室デビュー日: 2002/07/05
投稿数: 24
投稿日時: 2004-06-07 15:53
早速の回答ありがとうございます。

大事なことを書き忘れていました。
環境は、VC++ 6.0 です。(.NETが使えません)

すみませんでした。
再度、よろしくお願い致します。
1

スキルアップ/キャリアアップ(JOB@IT)