2013-07-17 115 views
1

我正在使用Windows Server 2008和IIS 7.5 我试图以这种方式访问​​文件:\ server \ C $ \ temp \ testFile.log来自运行在另一台服务器上的C#代码。我无法从C#访问unc路径。访问被拒绝

我的用户名是两台服务器上的管理员。该代码正在该帐户下运行。临时文件夹已被设置为(我的用户)和ASP.NET的完整权限。

为什么我无法访问它?

我不能做一个共享文件夹;违反规则。我已经在充分考虑的情况下运行;因此,我不需要做假冒,对吧?

+1

讨论当你说你正在使用的 '管理员' 账户上这两台机器,你是在谈论本地机器管理员或域/架构/等管理员? –

+3

你能访问Windows资源管理器中的文件夹吗? – Amy

+0

我还想提一下,我可以访问控制台应用程序的路径。 – user1019042

回答

1

这是一个网络应用程序?你确定该应用程序正在冒充你的帐户吗?在IIS中匿名访问设置为true?

+0

你说过:你确定这个应用程序冒充你的账户吗?是的,我尝试了假冒,即使我不认为我需要它,基于以下链接:http://support.microsoft.com/kb/306158#3。但是当我看到你的:“你确定,”它让我重新访问并碰到另一个链接,给了我正确的模仿:http://stackoverflow.com/questions/125341/how-do-you-do-impersonation-网内(检查马特约翰逊的答案)。他的解决方案像一个魅力! 所以你有种引导我正确的方向。谢谢! 注意:即使IIS匿名设置设置为false,解决方案也能正常工作! – user1019042

+0

太棒了!很高兴我能在你得到你需要的解决方案中扮演一些角色(如果甚至非常小)。我只回答是因为这两件事情一次又一次地困扰着我。 – AnotherDeveloper

3

前段时间有这个问题。

为了让您的调试过程能够以完全管理员权限运行,您必须以完全管理员权限打开Visual Studio。

在生产中,让您的流程“以管理员身份运行”。

如果您没有执行上述任何操作,您将不得不实施模拟。