示例#1
0
        public static void WriteToEventLogTest()
        {
            WindowsEventLog evt = null;

            try
            {
                _msg.Length = 0;
                _msg.Append("WriteToEventLogTest started ...\r\n");
                Program._messageLog.WriteLine(_msg.ToString());

                evt = new WindowsEventLog(WindowsEventLog.EventLogName.Application, ".", "PFApps");

                evt.WriteEntry("Test message from testprog ... yes indeed!", WindowsEventLog.WindowsEventLogEntryType.Information);
            }
            catch (System.Exception ex)
            {
                _msg.Length = 0;
                _msg.Append(AppGlobals.AppMessages.FormatErrorMessage(ex));
                Program._messageLog.WriteLine(_msg.ToString());
                AppMessages.DisplayErrorMessage(_msg.ToString(), _saveErrorMessagesToAppLog);
            }
            finally
            {
                _msg.Length = 0;
                _msg.Append("\r\n... WriteToEventLogTest finished.");
                Program._messageLog.WriteLine(_msg.ToString());
            }
        }
示例#2
0
        public void GivenWindowsEventLogAndDefaultEntryTypeShouldWriteEntry()
        {
            const string source    = "source";
            const string message   = "message";
            EventType    eventType = new EventType();

            LogAuthorFake   logAuthorFake   = new LogAuthorFake();
            WindowsEventLog windowsEventLog = new WindowsEventLog(logAuthorFake);

            windowsEventLog.WriteEntry(source, message, eventType);

            logAuthorFake.LogEntries().Count.Should().Be(1);
            logAuthorFake.LogEntries().First().Source().Should().Be(source);
            logAuthorFake.LogEntries().First().Message().Should().Be(message);
            logAuthorFake.LogEntries().First().EventType().Should().Be(eventType);
        }
        public void OutputMessagesToWindowsApplicationEventLog(string eventSourceName,
                                                               int numInformationMessagesToWrite,
                                                               int numWarningMessagesToWrite,
                                                               int numErrorMessagesToWrite)
        {
            WindowsEventLog eventLog = null;


            try
            {
                if (WindowsEventLog.SourceExists(eventSourceName) == false)
                {
                    WindowsEventLog.CreateEventSource(eventSourceName);
                    if (WindowsEventLog.SourceExists(eventSourceName))
                    {
                        _msg.Length = 0;
                        _msg.Append("Event Source ");
                        _msg.Append(eventSourceName);
                        _msg.Append(" create succeeded.");
                        WriteMessageToLog(_msg.ToString());
                    }
                    else
                    {
                        _msg.Length = 0;
                        _msg.Append("Event Source ");
                        _msg.Append(eventSourceName);
                        _msg.Append(" create failed.");
                        WriteMessageToLog(_msg.ToString());
                    }
                }
                else
                {
                    _msg.Length = 0;
                    _msg.Append("Event Source ");
                    _msg.Append(eventSourceName);
                    _msg.Append(" exists.");
                    WriteMessageToLog(_msg.ToString());
                }

                eventLog = new WindowsEventLog(WindowsEventLog.EventLogName.Application, ".", eventSourceName);

                for (int i = 1; i <= numInformationMessagesToWrite; i++)
                {
                    _msg.Length = 0;
                    _msg.Append("Message ");
                    _msg.Append(i.ToString());
                    _msg.Append(" from test program.");
                    eventLog.WriteEntry(_msg.ToString(), WindowsEventLog.WindowsEventLogEntryType.Information);
                }

                for (int i = 1; i <= numWarningMessagesToWrite; i++)
                {
                    _msg.Length = 0;
                    _msg.Append("Warning message ");
                    _msg.Append(i.ToString());
                    _msg.Append(" from test program.");
                    eventLog.WriteEntry(_msg.ToString(), WindowsEventLog.WindowsEventLogEntryType.Warning);
                }

                for (int i = 1; i <= numErrorMessagesToWrite; i++)
                {
                    _msg.Length = 0;
                    _msg.Append("Error message ");
                    _msg.Append(i.ToString());
                    _msg.Append(" from test program.");
                    eventLog.WriteEntry(_msg.ToString(), WindowsEventLog.WindowsEventLogEntryType.Error);
                }

                _msg.Length = 0;
                _msg.Append("Number of event log messages written = ");
                _msg.Append((numInformationMessagesToWrite + numWarningMessagesToWrite + numErrorMessagesToWrite).ToString("#,##0"));
                WriteMessageToLog(_msg.ToString());
            }
            catch (System.Exception ex)
            {
                _msg.Length = 0;
                _msg.Append(AppGlobals.AppMessages.FormatErrorMessage(ex));
                _msg.Append(Environment.NewLine);
                _msg.Append("Caller must have elevated security permissions (e.g. use Run As Administrator) to create and delete event sources and event logs.");
                WriteMessageToLog(_msg.ToString());
                AppMessages.DisplayErrorMessage(_msg.ToString(), true);
            }
            finally
            {
                ;
            }
        }