WCF:尝试写入文本文件/日志,获取UnauthorizedAccessException?

时间:2010-12-04 01:49:20

标签: c# visual-studio wcf

我希望我的服务能够写入日志文件。我怎样才能“访问”这样做?我刚刚运行visual studio / asp.net ...没有真正部署或没有。

3 个答案:

答案 0 :(得分:1)

要写入日志文件,请确保运行Web应用程序的标识具有写入权限到日志目录。

IIS7:您可以在IIS管理控制台中找到该标识。选择Web应用程序正在使用的应用程序池。单击“高级设置”。在属性窗口中,查找标识字段。它可能会说网络服务。这是需要对日志输出文件夹具有写入权限的帐户。

IIS6:与IIS7相同,只是右键单击应用程序池并选择属性。 IIS6的属性窗口将具有“标识”选项卡。

如果您已在此目录中有一个日志文件,请尝试删除它并让框架创建它。

希望这有帮助。

答案 1 :(得分:0)

检查日志文件上的只读标志,如果已设置则清除它。

http://www.eggheadcafe.com/software/aspnet/32181030/unauthorizedaccessexception-in-debug-mode-only.aspx

答案 2 :(得分:0)

除了检查文件上的只读标志之外,还必须考虑您尝试写入的文件所在的目录。例如,当您写入文件时,Windows Vista和Windows 7通常不喜欢它文件在程序文件目录和程序文件的任何子目录中。在这种情况下,它将成为权限问题而不是编程问题,您必须使用提升的权限(管理员权限)运行应用程序和/或更改目录中的安全权限,或更改您尝试写入文本文件的目录/登录。