Pregunta

Estoy tratando de usar Log4net con un archivo de configuración externo, pero no funciona: nada se registra

<?xml version="1.0" encoding="utf-8" ?>
<log4net>   
    <appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
        <file value="C:\\tmp\\test.log" />
        <appendToFile value="true" />
        <maximumFileSize value="100KB" />
        <maxSizeRollBackups value="2" />

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

    <root>
         <appender-ref ref="RollingFile" />
    </root>
</log4net>

Si uso esta línea en ensamblaje.cs, Test.lg es creatd cuando la BHO está registrada con regasm, pero no cuando el complemento se está ejecutando:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = @"C:\\tmp\\test.log4net", Watch = true)]

Cuando uso este código dentro de la BHO, no hay registro, es advenedo a test.log:

XmlConfigurator.Configure(new System.IO.FileInfo(@"C:\\tmp\\test.log4net"));
log.Info("test");

No estoy seguro de lo que estoy haciendo mal.

¿Fue útil?

Solución

El archivo de configuración de LOG4net estaba bien.El problema es que Internet Explorer corrió en modo protegido, lo que prohíbe que BHOS escriba a carpetas arbitrarias.Solo hay algunas carpetas donde la BHO puede escribir.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top