我有一个Windows窗体应用程序,它使用log4net写入日志文件.app.config文件中的日志文件路径定义为:
<file type="log4net.Util.PatternString" value="Logs/LogFileName" />.
Run Code Online (Sandbox Code Playgroud)
我有一个msi安装项目,安装上面的应用程序.我在开发机器上安装App,运行已安装的App,并按预期在目录InstallDirectory/Logs /下写入日志文件.开发机器具有Win XP SP3,具有所有读写权限.
但是,当我在具有Windows 7且我不确定权限的测试计算机上安装相同内容时,没有"Logs"目录,也没有日志文件.
在这两种情况下,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);
Run Code Online (Sandbox Code Playgroud)
对于代码,有人可以请一些亮点.