2014-06-26 67 views
1

我已經編寫了一個使用log4net進行日誌記錄的C#dll-foo.dll。該DLL然後通過C++ \ CLI包裝器在C++應用程序中使用。 C++應用程序完美工作,但日誌文件不會創建。當我在測試C#應用程序(使用原始C#dll)中使用此dll時,創建的日誌文件沒有問題。在C++/CLI中使用時未創建C#應用程序log4net日誌文件

此配置設置在foo.dll.config:

<configSections>  
    <section name="log4net" 
     type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> 
    </configSections> 
    <log4net> 
    <root> 
     <level value="DEBUG" /> 
     <appender-ref ref="RollingFileAppender" /> 
    </root> 
    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> 
     <file value="D:\\foo.log" /> 
     <appendToFile value="true" /> 
     <rollingStyle value="Size" /> 
     <maxSizeRollBackups value="5" /> 
     <maximumFileSize value="10MB" /> 
     <staticLogFileName value="true" /> 
     <layout type="log4net.Layout.PatternLayout"> 
      <conversionPattern value="%date [%thread] %level - %message%newline" /> 
     </layout> 
    </appender> 
    </log4net> 

其他配置都沒有從foo.dll.config文件和C++應用程序寫日誌目錄權限問題讀取。

任何想法我在這裏失蹤?

回答

1

我重新寫我的評論作爲答案。

你必須嘗試定義一個app.config文件爲您的C++應用程序(不僅爲DLL本身),並在其上包括log4net的配置。