代码之家  ›  专栏  ›  技术社区  ›  Tom Kidd

错误消息:“对路径c:\windows\microsoft.net\framework\(版本\临时ASP.NET文件\(blah)的访问被拒绝。”-是什么导致了这种情况?

  •  4
  • Tom Kidd  · 技术社区  · 16 年前

    每次调试时,我都会在ASP.NET错误页上以漂亮的棕色文本收到此消息:

    访问路径 “C:\Windows\Microsoft.NET\Framework\(版本\临时ASP.NET文件\(blah)” 被拒绝。

    我从来没有弄清楚是什么导致了它,是什么真正解决了它,以及为什么会发生。

    通常情况下,“临时ASP.NET文件”部分(blah)后面的路径不存在,所以我不确定它为什么会出现在那里。

    有时IISReset会修复它,有时不会。

    有时候一个aspnet寄存器会修复它,有时候不会。

    有时重启会修复它,有时则不会。

    我今天遇到了一些.NET 1.1代码(是的,仍然保持一些代码-希望很快升级),我不确定我是否见过.NET 2.0及更高版本的代码。

    有人知道这是什么原因吗?应该怎么解决?我想它有多种可能的原因,但我只是好奇是否有人能对它有所了解。

    6 回复  |  直到 8 年前
        1
  •  4
  •   Jeff Atwood    16 年前

    据我所知,这可能是由于机器上运行的反病毒程序和间歇性地锁定文件造成的。

        2
  •  1
  •   Tai Squared    16 年前

    如果为临时目录打开了Windows索引服务,则可能会发生这种情况。见 this article 详情。运行文件监视器(位于 sysinternals.com )在临时目录上放置一个过滤器。当您收到访问错误时,请查看是哪个应用程序导致了该问题。很可能是病毒扫描-将此目录从扫描中排除,然后查看问题是否已解决。

        3
  •  1
  •   Bil Simser    16 年前

    默认情况下,ASP.NET应用程序在asp net帐户(IIS 5)或网络服务帐户(IIS 6/7)下运行。如果您已经为该站点打开了匿名功能,他们也会使用iusr_machinename帐户。将这些帐户的完全权限授予您有访问问题的临时目录。

        4
  •  0
  •   Brendan Kowitz    16 年前

    当IIS用户没有访问\temporary asp.net files目录的权限时,也可能发生这种情况。

        5
  •  0
  •   surfy1h    16 年前

    将用户“Everyone”添加到文件夹临时ASP.NET文件的权限中

        6
  •  0
  •   Eddie Loeffen    8 年前

    我通过完全控制团队来解决这个问题 IIS_IUSRS C:\Windows\Temp 运行过程监视和筛选之后 Result is ACCESS DENIED .

    csc.exe 试图在中创建文件 c:\Windows \TEMP 并且没有这样做的许可。

    推荐文章