private void OnEventRecordWritten(object sender, EventRecordWrittenEventArgs e) { try { string[] propertyQueries = new string[] { "Event/EventData/Data[@Name=\"IpAddress\"]" }; EventLogPropertySelector propertySelector = new EventLogPropertySelector(propertyQueries); string str = ((EventLogRecord)e.EventRecord).GetPropertyValues(propertySelector)[0].ToString(); NegotiationdEventArgs data = new NegotiationdEventArgs { IpAddress = str, EventId = e.EventRecord.Id, EventName = e.EventRecord.LogName, EventMessageXml = e.EventRecord.ToXml(), CreateDate = e.EventRecord.TimeCreated.Value }; if (Negotiated != null) { Negotiated(this, data); } } catch (Exception exception) { WriteEntry(exception.Message); } }
void activity_Negotiated(object sender, NegotiationdEventArgs data) { if (Command.Connection.State != ConnectionState.Open) { Command.Connection.Open(); } Command.Parameters.Clear(); Command.Parameters.AddWithValue("@IP", data.IpAddress); Command.Parameters.AddWithValue("@EventID", data.EventId); Command.Parameters.AddWithValue("@EventName", data.EventName); Command.Parameters.AddWithValue("@EventMessage", data.EventMessageXml); Command.Parameters.AddWithValue("@Created", data.CreateDate); Command.ExecuteNonQuery(); Command.Connection.Close(); }