log4net c#,安装的程序无法写入日志文件

时间:2015-02-08 14:12:34

标签: c# logging permissions log4net

我可以在发布和调试模式下在VS2012(Winform)中运行程序。 它工作并将日志写入文件。

用INNO Compiler编译成可安装程序后。然后安装编译成功的程序。该程序有效,但没有日志文件。

我将权限更改为完全控制权和所有权。尝试以管理员身份运行。

仍然无法运作。 谢谢。

 <configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />

  

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
  <param name="File" value="C:\\printer\\log_"/> 

  <param name="RollingStyle" value="Date"/>
  <param name="DatePattern" value="yyyy-MM-dd.\tx\t" />
  <param name="StaticLogFileName" value="false"/>

  <lockingmodel type="log4net.Appender.FileAppender+MinimalLock" />

  <appendToFile value="true" />

  <maxSizeRollBackups value="5" />
  <maximumFileSize value="5MB" />

  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%date [%thread] %level %logger - %message%newline" />
  </layout>
</appender>

<root>
  <priority value="ALL" />

  <appender-ref ref="RollingFileAppender" />
</root>
<category name="DesktopLogger.Form1">
  <priority value="ALL" />
</category>

1 个答案:

答案 0 :(得分:0)

您的问题只是猜测无法访问您的安装程序/机器。您可以启用log4net日志记录以查看发生的情况:

<configuration>
...
    <appSettings>
        <add key="log4net.Internal.Debug" value="true"/>
    </appSettings>

...

    <system.diagnostics>
        <trace autoflush="true">
            <listeners>
                <add 
                    name="textWriterTraceListener" 
                    type="System.Diagnostics.TextWriterTraceListener" 
                    initializeData="C:\tmp\log4net.txt" />
            </listeners>
        </trace>
    </system.diagnostics>
</configuration>

Log4net FAQ