/// <summary> /// Initializes a new instance of the <see cref="EventViewerDialog"/> class. /// </summary> /// <param name="taskEvent">The <see cref="TaskEvent"/> to show initially.</param> /// <param name="log">The <see cref="TaskEventLog"/> for the task.</param> public EventViewerDialog(TaskEvent taskEvent = null, TaskEventLog log = null) { InitializeComponent(); if (taskEvent != null) { Initialize(taskEvent, log); } }
private ListViewItem BuildItem(TaskEvent item) { var kwds = new List <string>(item.EventRecord.KeywordsDisplayNames); return(new ListViewItem(new string[] { item.Level, item.TimeCreated.ToString(), item.EventId.ToString(), item.TaskCategory, item.OpCode, item.ActivityId.ToString(), string.Join(", ", kwds.ToArray()), "TaskScheduler", item.UserId.Translate(typeof(System.Security.Principal.NTAccount)).ToString(), item.EventRecord.LogName, item.EventRecord.MachineName, item.ProcessId.ToString(), item.EventRecord.ThreadId.ToString() }, item.EventRecord.Level.GetValueOrDefault(0)) { Tag = item }); }
private void SelectItemChanged(int newSelIdx) { if (selectedIndex != newSelIdx) { selectedIndex = newSelIdx; ListViewItem lvi = vcache[selectedIndex]; if (lvi != null) { TaskEvent ev = lvi.Tag as TaskEvent; historyDetailView.TaskEvent = ev; historyDetailTitleText.Text = ev == null ? string.Empty : string.Format(EditorProperties.Resources.EventDetailHeader, ev.EventId); } } }
/// <summary> /// Initializes the dialog with the specified task event. /// </summary> /// <param name="taskEvent">The <see cref="TaskEvent"/> to show initially.</param> /// <param name="log">The <see cref="TaskEventLog"/> for the task.</param> public void Initialize(TaskEvent taskEvent, TaskEventLog log = null) { if (taskEvent == null) { throw new ArgumentNullException("taskEvent"); } if (log != null) { eventEnum = log.GetEnumerator() as TaskEventEnumerator; eventEnum.Seek(CurrentEvent.EventRecord.Bookmark); } else { eventEnum = null; } CurrentEvent = taskEvent; }
private void Watcher_EventRecordWritten(object sender, EventRecordWrittenEventArgs e) { try { var taskEvent = new TaskEvent(e.EventRecord); System.Diagnostics.Debug.WriteLine("Task event: " + taskEvent.ToString()); // Get the task name and folder if (string.IsNullOrEmpty(taskEvent.TaskPath)) { return; } int cpos = taskEvent.TaskPath.LastIndexOf('\\'); string name = taskEvent.TaskPath.Substring(cpos + 1); string fld = taskEvent.TaskPath.Substring(0, cpos + 1); // Check folder and name filters if (!string.IsNullOrEmpty(Filter.TaskName) && string.Compare(Filter.TaskName, taskEvent.TaskPath, StringComparison.OrdinalIgnoreCase) != 0) { if (Filter.Wildcard != null && !Filter.Wildcard.IsMatch(name)) { return; } if (IncludeSubfolders && !fld.StartsWith(folder, StringComparison.OrdinalIgnoreCase)) { return; } if (!IncludeSubfolders && string.Compare(folder, fld, StringComparison.OrdinalIgnoreCase) != 0) { return; } } OnEventRecorded(this, new TaskEventArgs(taskEvent, TaskService)); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine($"{nameof(Watcher_EventRecordWritten)} has failed. Error: {ex.ToString()}"); } }
private ListViewItem BuildItem(TaskEvent item) { var kwds = new List <string>(item.EventRecord.KeywordsDisplayNames); var i = new ListViewItem(new ListViewItem.ListViewSubItem[] { BuildSubItem(item.Level), BuildSubItem(item.TimeCreated), BuildSubItem(item.EventId), BuildSubItem(item.TaskCategory), BuildSubItem(item.OpCode), BuildSubItem(item.ActivityId), BuildSubItem(string.Join(", ", kwds.ToArray())), BuildSubItem("TaskScheduler"), BuildSubItem(item.UserId.Translate(typeof(System.Security.Principal.NTAccount))), BuildSubItem(item.EventRecord.LogName), BuildSubItem(item.EventRecord.MachineName), BuildSubItem(item.ProcessId), BuildSubItem(item.EventRecord.ThreadId) }, item.EventRecord.Level.GetValueOrDefault(0)) { Tag = item }; return(i); }
internal TaskEventArgs([NotNull] TaskEvent evt, TaskService ts = null) { TaskEvent = evt; TaskPath = evt.TaskPath; taskService = ts; }