【问题标题】:AssemblyInfo.vb change Log4NetAssembly1.exe.log4net path to user's local folderAssemblyInfo.vb 将 Log4NetAssembly1.exe.log4net 路径更改为用户的本地文件夹
【发布时间】:2015-02-05 03:17:12
【问题描述】:

我的 vb.net 项目用于不同的用户,我迷失了如何在 AssemblyInfo.vb 中将 Log4NetAssembly1.exe.log4net 文件路径设置为用户的本地文件夹。 每个用户的 Log4NetAssembly1.exe.log4net 文件位于 C:\Users\UserName\AppData\Local\Temp\DeskApp\DeskApp\Log4NetAssembly1.exe.log4net 中。

我尝试过使用下面的方法,但是不行:

<Assembly: AssemblyTitle("DeskApp")> 
<Assembly: AssemblyDescription("")> 
<Assembly: AssemblyCompany("ESRI")> 
<Assembly: AssemblyProduct("DeskApp")> 
<Assembly: AssemblyCopyright("Copyright © ESRI 2009")> 
<Assembly: AssemblyTrademark("")> 
<Assembly: log4net.Config.XMLConfigurator(ConfigFile:="${LOCALAPPDATA}\Temp\DeskApp\DeskApp\Log4NetAssembly1.exe.log4net", Watch:=True)>

我正在使用 vs 2012,在此先感谢。

编辑

我尝试将 log4net 文件与 AssemblyInfo.vb 放在同一文件夹中,并使用:

<Assembly: log4net.Config.XMLConfigurator(ConfigFileExtension:="log4net", Watch:=True)> 

但是没有生效。

【问题讨论】:

  • 您可以通过检查LogManager.GetRepository().Configured来检查log4net是否正在获取配置

标签: vb.net log4net local .net-assembly


【解决方案1】:

如果配置文件与 .exe 位于同一文件夹中,则 don't need to specify an absolute path:

配置文件

如果指定,这是配置的文件名 与 XmlConfigurator 一起使用的文件。此文件路径是相对于 应用程序基目录 (AppDomain.CurrentDomain.BaseDirectory)。

如果配置文件位于不相关的目录中,则必须删除程序集属性并在运行时配置 log4net,否则将不会评估环境变量:

Dim filePath as String = Path.Combine(System.Environment.GetFolderPath
                                    (Environment.SpecialFolder.LocalApplicationData), 
                        "Temp\DeskApp\DeskApp\Log4NetAssembly1.exe.log4net")

Dim fileInfo As New FileInfo(filePath)

If fileInfo.Exists = False Then
    Throw New InvalidOperationException("Can't locate the log4net config file")
End If

log4net.Config.XmlConfigurator.ConfigureAndWatch(fileInfo)

【讨论】:

  • 您好 stuartd,我尝试将它们放在同一个文件夹中并更新 AssemblyInfo.vb 作为示例,但没有效果。我已经编辑了我的问题,谢谢!
  • 嗨 stuartd,很抱歉回复晚了。我已经在运行时成功配置了 log4net。非常感谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-18
  • 2014-04-27
  • 1970-01-01
相关资源
最近更新 更多