プロが教える店舗&オフィスのセキュリティ対策術

PCよりEventLogを使いアプリケーションログ情報を取得は、出来るのですが、取得が古い順番になってしまします。
この取得を新しい物からにしたいのですが方法がわかりません。ご教授お願いします。

A 回答 (2件)

環境が書いてませんが,VB.NETなら,


http://dobon.net/vb/dotnet/system/geteventlogs.h …
これを参考に...

Dim DT As DataTable = New DataTable
DT.Columns.Add("Log", GetType(String))
DT.Columns.Add("EntryDate", GetType(String))
DT.Columns.Add("Entry", GetType(String))

Dim logs() As System.Diagnostics.EventLog
logs = System.Diagnostics.EventLog.GetEventLogs()
Dim log As System.Diagnostics.EventLog
For Each log In logs
Dim entry As System.Diagnostics.EventLogEntry
For Each entry In log.Entries
Dim row As DataRow = DT.NewRow()
row("Log") = log.Log
row("EntryDate") = entry.TimeWritten.ToString("yyyyMMddhhmmss")
row("Entry") = entry.Message
DT.Rows.Add(row)
Next
Next

Dim sorted_dt() As DataRow = DT.Select("", "EntryDate")

For Each r As DataRow In sorted_dt
Trace.WriteLine(CType(r("Log"), String) + ":" + CType(r("EntryDate"), String) + ":" + CType(r("Entry"), String))
Next
    • good
    • 0
この回答へのお礼

ご教授有難うございます。教えて頂いたのを試したのですが、やはり古い順に取得してしまいました。
以下に使用したソースを載せます。何か間違いがあればご指摘お願いします。


Public Shared Sub Main()

Dim DT As DataTable = New DataTable
DT.Columns.Add("Log", GetType(String))
DT.Columns.Add("EntryDate", GetType(String))
DT.Columns.Add("Entry", GetType(String))

Dim logs() As System.Diagnostics.EventLog

logs = System.Diagnostics.EventLog.GetEventLogs()
Dim log As System.Diagnostics.EventLog
For Each log In logs
Dim entry As System.Diagnostics.EventLogEntry
For Each entry In log.Entries
Dim row As DataRow = DT.NewRow()
row("Log") = log.Log
row("EntryDate") = entry.TimeWritten.ToString("yyyyMMddhhmmss")
row("Entry") = entry.Message
DT.Rows.Add(row)
Next
Next

Dim sorted_dt() As DataRow = DT.Select("", "EntryDate")

For Each r As DataRow In sorted_dt
Trace.WriteLine(CType(r("Log"), String) + ":" + CType(r("EntryDate"), String) + ":" + CType(r("Entry"), String))
Next
End Sub

お礼日時:2005/08/30 00:26

お世話になります。



ごめんなさい...
DT.Select("", "EntryDate DESC")

でした…orz
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!