cs0016:未能写入输出文件 解决方法

cs0016:未能写入输出文件 解决方法
前些天发布一个网站,通过visual Studio 2005 发布的,部署好项目以后用户可以使用,但是不知为什么突然的就用不了了。访问发布网站时出现的错误页面如下:
//-----------------------------------------------------
编译错误
 说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当的修改源代码
编译器错误信息: cs0016:未能写入输出文件
"c:"WINDOWS"Microsoft.NET"Framework"v2.0.50727"Temporary ASP.NET Files"root"...."*.dll--“拒绝访问”
源错误:
  [没有相关的源行]
//------------------------------------------------------
 
产生原因: 应用程序运行时产生的临时文件需要存放到c:"windows"temp 文件夹下 而运行基于microsoft  .net framework 框架下的应用程序 需要对temp 具有读写的权限 ,所以程序运行产生的临时文件不能存储或读取 ,或者路径不存在的情况下都会产生编译错误 。
 
解决方法:
1  设置temp 目录访问权限 temp--> 属性-->共享和安全-->安全-- > 添加network service -->并赋予其权限为 读 和 写--> 确定
(注意:操作系统为windows server2003 framework  版本在 1.1及以上)
2 设置发布网站的程序目录中bin文件夹的权限 同样添加 network service 并设置权限为读取、 运行   
3 执行以上两步操作设置后问题解决。
 
备注: 产生原因是自己的理解仅供参考,不对之处请指正
Hippo's advice:这也是一个测试不足的问题。多注意开发环境和实际生产环境的不同,发布前应建立模拟环境进行部署。
详细讲解请参考如下地址
posted @ 2008-01-18 17:04  夜鹰.沈  阅读(3205)  评论(0编辑  收藏  举报