У меня есть приложение Windows form, которое записывает файлы журнала с помощью log4net. Путь к файлу журнала в файле app.config определяется как:
<file type="log4net.Util.PatternString" value="Logs/LogFileName" />.
У меня есть проект установки msi, который устанавливает указанное выше приложение. Я устанавливаю приложение на машину разработки, запускаю установленное приложение, и, как и ожидалось, оно записывает файлы журнала в каталог InstallDirectory / Logs /. На машине разработчика установлен Win XP SP3 со всеми разрешениями на чтение и запись.
Но когда я устанавливаю то же самое на тестовой машине, на которой установлена Windows 7, и я не уверен в разрешениях, нет каталога «Журналы» и файлов журналов.
В обоих случаях InstallDirectory - это C: \ Program Files \ Dir1 \ Dir2.
Пока я пытаюсь выяснить, где находятся файлы, на тестовой машине, добавляя:
log4net.Appender.FileAppender rootAppender = (log4net.Appender.FileAppender)((log4net.Repository.Hierarchy.Hierarchy)LogManager.GetRepository()).Root.Appenders[0];
string filename = rootAppender.File;
MessageBox.Show(filename);
в код, может кто-нибудь пролить свет.