Получение «… уже зарегистрировано…» из EventLog.CreateEventSource, хотя я проверяю! EventLog.SourceExists

Мой следующий код не работает с «... уже был зарегистрирован как источник на локальном компьютере», хотя я делаю проверки в первую очередь:

lock ( eventLock )
{
    string eventLog = Constants.EventLogPL;
    string eventSrc = Constants.EventSrcPL;

    if (!EventLog.Exists(eventLog))
    {
        if (!EventLog.SourceExists(eventSrc))
        {
            try
            {
                EventLog.CreateEventSource(eventSrc, eventLog);
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e.Message);
            }
        }
    }
}

Я бы подумал, что мой звонок!EventLog.SourceExists было бы достаточно, чтобы предотвратить мою ошибку! Я на 2010 .NET 4 и Windows 7 64 компилируется на любом процессоре.

Редактировать: Обновленный код, позволяющий константам получать данные о том, что они не меняются, и использовать блокировку, чтобы гарантировать, что только один поток может протестировать и создать. Код все еще не работает с той же ошибкой

Ответы на вопрос(2)

Ваш ответ на вопрос