Если вы пытаетесь поделиться файлом журнала между процессами, вам нужно защитить этот файл с помощью какой-либо блокировки или повторить попытки приложений в случае сбоя записи.Невозможно, чтобы два процесса писали в один и тот же файл одновременно.Два процесса могут открыть файл для записи, но если они оба попытаются писать одновременно, вы, скорее всего, получите исключение.
Вероятно, самый простой способ сделать это - Mutex
,Каждое приложение будет создавать имя Mutex
при запуске, используя то же имя:
Mutex LogLock = new Mutex(false, "LogLock");
Затем, когда вы хотите записать в файл:
LogLock.WaitOne();
try
{
// write to the file
}
finally
{
LogLock.ReleaseMutex();
}
Если вы хотитезаписать в журнал событий Windows, заглянуть в класс System.Diagnostics.EventLog .У меня нет опыта записи в журнал событий Windows, поэтому я не могу сказать, сработает ли это для вас.