1

次のコードを実行すると、2012年2月2日の出力が実行されます。今日の日付、昨日、前日の出力を表示したいと思います。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace @event
{
    using System.Diagnostics;
    class MySample
    {
        public static void Main()
        {
            string eventLogName = "System";
            string sourceName = "BTHUSB";
            string machineName =".";
            EventLog eventLog;
            eventLog = new EventLog();
            eventLog.Log = eventLogName;
            eventLog.Source = sourceName;
            eventLog.MachineName = machineName;
            int i;
            i = 0;

            foreach (EventLogEntry log in eventLog.Entries)
            {
                i = i + 1;
                if(log.EntryType.ToString()=="Error")
                Console.WriteLine((i)+") Entry type: {0} , Category: {1},  Data: {2}, ID: {3}, Source: {4} \n",log.EntryType,log.TimeWritten.ToLocalTime(),log.Data,log.EventID,log.Source);
            }
        }
    }
}

この問題を解決するのを手伝ってください....

4

1 に答える 1

2

Reverseを呼び出すだけで、次のことが可能になります。

foreach (var log in eventLog.Entries.Cast<EventLogEntry>().Reverse()) {...}
于 2013-02-07T11:44:53.243 に答える