DrG*_*iff 17 asp.net iis asp.net-mvc visual-studio asp.net-mvc-4
简单来说
当我尝试浏览我的网站时,收到以下错误消息:
CS0016:无法写入输出文件'c:\ Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\www\xxx\yyy\zzz\abdll' - '目录名无效'
详细地
我的开发PC上有两个网站(虚构名称):
最近,我几乎经常在Web4上使用VS2012,它工作正常,但是前几天我试图运行Web2并得到上面显示的异常.
奇怪的是,路径的一部分(我上面用字母"zzz"替换)似乎指向德语路径,因为它是"\ de-DE" - 我不是用德语操作,所以我不知道从哪里得到这个想法.
有一件事几乎肯定是无关紧要的,但由于某些未知的原因,我觉得重要的是提到:我在Visual Studio 2012中使用性能分析工具在此问题首次出现的前一天,我不知道这是否可能有对我的电脑做了一些改动......?
尝试修复
互联网上有很多相关的话题; 一些线程成功结束,其中文件访问权限已被更改,而其他线程完成了一些有点绝望的声音...我已经完成了将我的PC上所有相关声音目录的NTFS权限与其同事的NTFS权限进行比较的过程.机器这仍然有效.不幸的是,在那里没有快乐.
我还卸载了asp.net 2.0并使用以下命令重新安装:
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_regiis.exe -u
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_regiis.exe -ir
Run Code Online (Sandbox Code Playgroud)
再一次,在那里也没有快乐.
我的Web4继续不受影响.
另外,仅供参考:在Win7 x64上使用IIS 7.5.
我现在转向更广泛的观众,希望将我目前的绝望状态转变为成功之一.
感谢大家
格里夫
web*_*rge 42
在IIS管理器中,在应用程序池的高级设置中,确保"过程模型>加载用户配置文件"设置为"True".
我有同样的问题.我尝试更改权限,禁用防病毒,创建新的应用程序池,以及重新安装.NET.我甚至创建了一个只有"Default.aspx"页面的新网站,并尝试查看该网站.即使该网站也有编译错误.最后,我注意到我的应用程序池(干净的测试站点和主站点)具有加载用户配置文件设置的非默认值"False".我把它恢复为真,问题就消失了.
答案是使用ProcMon找到的:
临时asp.net文件首先在用户的临时文件夹中创建,然后移动到此文件夹中.由于一些尚未知的原因,我的Web2站点(.NET 2 AppPool)的编译现在使用与我的Web4(.NET 4 AppPool)站点相同的文件夹.
我使用ProcMon来识别"拒绝访问"的所有结果,并给予IIS_IUSRS组写权限(在一种情况下 - C:\ Users\ASP.NET V4.0集成 - 修改权限).
我不知道为什么编译使用"错误的"文件夹,我怀疑在某些情况下我可能会过度提升权限,但现在它正在工作.
小智 5
如果上述答案没有为您解决问题,请检查您的环境变量(右键单击计算机 -> 属性 -> 高级系统设置 -> 高级选项卡 -> 环境变量
确保临时变量指向具有所有必要权限的文件夹。(网络服务的完全访问权限,IIS_IUSRS)
注意:不要只检查顶部的两个变量,请查看系统变量下的滚动菜单内部。您也可能会在那里找到配置的变量。
归档时间: |
|
查看次数: |
25865 次 |
最近记录: |