1

外部構成ファイルで log4net を使用しようとしていますが、機能しません: 何もログに記録されません

<?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>

Assembly.cs でこの行を使用すると、BHO が regasm に登録されたときに test.lg が作成されますが、プラグインが実行されているときは作成されません。

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

BHO 内でこのコードを使用すると、test.log にログが追加されません。

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

何が間違っているのかわかりません。

4

1 に答える 1

0

log4net 構成ファイルは問題ありませんでした。問題は、Internet Explorer が保護モードで実行されていたため、BHO による任意のフォルダーへの書き込みが禁止されていたことです。BHO が書き込むことができるフォルダーはわずかしかありません。

于 2012-02-01T00:33:25.480 に答える