Log4net无法在非管理员帐户上创建日志

时间:2014-09-09 07:19:03

标签: windows windows-8 log4net log4net-configuration windows-security

我在Windows 8上实现并运行了一个应用程序log4net。 以本地管理员身份登录后运行应用程序时,正在创建日志;以下是它的log4net调试条目:

log4net: Creating repository [log4net-default-repository] using type [log4net.Repository.Hierarchy.Hierarchy]
log4net: configuring repository [log4net-default-repository] using file [.\Resources\Configuration\LoggerConfig.xml]
log4net: configuring repository [log4net-default-repository] using stream
log4net: loading XML configuration
log4net: Configuring Repository [log4net-default-repository]
log4net: Configuration update mode [Merge].

但是当应用程序在另一个帐户上运行时,它会停止创建日志; log4net调试信息如下:

log4net: Creating repository [log4net-default-repository] using type [log4net.Repository.Hierarchy.Hierarchy]
log4net: configuring repository [log4net-default-repository] using file [.\Resources\Configuration\LoggerConfig.xml]
log4net: config file [C:\Windows\system32\Resources\Configuration\LoggerConfig.xml] not found. Configuration unchanged.

然后我右键单击应用程序的exe并从兼容模式选中以管理员身份运行。仍然没有运气。 任何人都可以确切地建议我需要检查什么和在哪里?

1 个答案:

答案 0 :(得分:0)

查看您的错误消息:

log4net: config file [C:\Windows\system32\Resources\Configuration\LoggerConfig.xml] not found. Configuration unchanged.

非管理员用户无权访问system32文件夹。我建议将配置文件(以及任何其他资源)移动到应用程序的公共文件夹,该文件夹不在其他受限制的文件夹中,例如“C:\ YourAppName \资源\”。