public List <SystemLogEntry> GetLogEntries(string logName) { SystemLogEntriesPaged result = new SystemLogEntriesPaged(); List <SystemLogEntry> entries = new List <SystemLogEntry>(); if (String.IsNullOrEmpty(logName)) { return(entries); } EventLog log = new EventLog(logName); EventLogEntryCollection logEntries = log.Entries; int count = logEntries.Count; // iterate in reverse order for (int i = count - 1; i >= 0; i--) { entries.Add(CreateLogEntry(logEntries[i], false)); } return(entries); }
public SystemLogEntriesPaged GetLogEntriesPaged(string logName, int startRow, int maximumRows) { SystemLogEntriesPaged result = new SystemLogEntriesPaged(); List <SystemLogEntry> entries = new List <SystemLogEntry>(); if (String.IsNullOrEmpty(logName)) { result.Count = 0; result.Entries = new SystemLogEntry[] { }; return(result); } EventLog log = new EventLog(logName); EventLogEntryCollection logEntries = log.Entries; int count = logEntries.Count; result.Count = count; // iterate in reverse order startRow = count - 1 - startRow; int endRow = startRow - maximumRows + 1; if (endRow < 0) { endRow = 0; } for (int i = startRow; i >= endRow; i--) { entries.Add(CreateLogEntry(logEntries[i], true)); } result.Entries = entries.ToArray(); return(result); }