Прочитать записи просмотра событий

Я хочу прочитать записи о событиях из определенного пользовательского журнала событий в программе на C# и отфильтровать их по их описанию. Есть ли способ сделать это? Или способ получить записи как коллекцию, чтобы я мог выбрать из этого по условию?

1 ответ

Решение

Попробуйте что-то вроде этого:

       string queryString = string.Format("*[System[TimeCreated[@SystemTime>='{0}' and @SystemTime<='{1}']]]",
            DateTime.Now.Date.AddDays(-10).ToString("s"),
            DateTime.Now.Date.ToString("s"));
        var q = new EventLogQuery("Microsoft-Windows-User Profile Service/Operational", PathType.LogName, queryString);
        var r = new EventLogReader(q);

        var list = new List<EventRecord>(); 

        EventRecord er = r.ReadEvent();
        while (er != null) {
            list.Add(er);
            er = r.ReadEvent();
        }

Фильтр есть XPath а также XQuery, Если вы хотите узнать о внутренней структуре событий, я нашел, что лучше всего прочитать определение фильтра в eventvwr, Заглянуть в XML... цвет вкладка

Другие вопросы по тегам