В статье MSDN для класса EventLog он содержит следующий блок кода:
public static void Main(){
// Create the source, if it does not already exist.
if(!EventLog.SourceExists("MySource"))
{
//An event log source should not be created and immediately used.
//There is a latency time to enable the source, it should be created
//prior to executing the application that uses the source.
//Execute this sample a second time to use the new source.
EventLog.CreateEventSource("MySource", "MyNewLog");
Console.WriteLine("CreatedEventSource");
Console.WriteLine("Exiting, execute the application a second time to use the source.");
// The source is created. Exit the application to allow it to be registered.
return;
}
// Create an EventLog instance and assign its source.
EventLog myLog = new EventLog();
myLog.Source = "MySource";
// Write an informational entry to the event log.
myLog.WriteEntry("Writing to event log.");
}
Я хочу правильно реализовать экземпляр EventLog
во время разработки приложение, которое входит в систему просмотра событий. Тем не менее, я не могу найти упоминания об этом требовании за пределами этой статьи, и мое приложение, кажется, работает хорошо без применения этого. Кроме того, учебник MSDN по созданию службы, использующей класс EventLog
, также не выполняет это требование.
Какие риски присущи, если приложение не требуется дважды загружать, если приложение использует класс EventLog
? Является ли наихудший риск потери какой-либо зарегистрированной информации или есть более тонкое и ужасное поведение, к которому это может привести?