CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\26676eb

Win7 ASP.Net 错误
本文解决在Win7上发布ASP.Net应用时遇到的CS0016错误。问题出现在尝试通过http://localhost/Default.aspx访问应用时。解决办法包括调整C:WindowsTemp的权限设置,并为源程序所在路径赋予IIS_IUSRS用户完全控制权限。

在win7上发布ASP.Net,通过http://localhost/Default.aspx访问,出现错误:CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\26676eb

 

解决方案:

C:\Windows\Temp->属性->安全->IIS_IUSRS 对该用户赋予完全控制权限

另外,在win7发布ASP.Net时,需要对源程序所在物理路径赋予IIS_IUSRS用户完全控制权限

### ### 常见原因分析 运行 `cd C:\Windows\Microsoft.NET\Framework64\v2.0.50727` 命令失败可能由以下几个原因导致: 1. **路径不存在或拼写错误** 某些系统可能没有安装 .NET Framework 2.0 的 64 位版本,因此该目录不存在。此外,路径中的大小写或拼写错误也可能导致命令失败。 2. **权限不足** 如果当前用户没有访问系统目录的权限,命令行工具可能无法进入该目录。尤其是在使用标准用户权限运行命令提示符时,可能会遇到访问被拒绝的问题。 3. **32 位与 64 位路径混淆** 在 64 位系统中,`Framework64` 和 `Framework` 是两个不同的目录,分别对应 64 位和 32 位的 .NET 安装路径。如果误用了 `Framework` 而非 `Framework64`,可能导致路径错误。 4. **系统文件损坏或 .NET Framework 未正确安装** 如果 .NET Framework 安装不完整或注册表信息异常,也可能导致路径无法访问。 ### ### 解决方案 #### 1. 确认路径是否存在 首先,检查目标路径是否真实存在。可以通过文件资源管理器访问: ``` C:\Windows\Microsoft.NET\Framework64\v2.0.50727 ``` 如果路径不存在,说明 .NET Framework 2.0 64 位版本未安装。可以尝试通过以下方式安装: - 控制面板 → 程序 → 启用或关闭 Windows 功能 → 勾选“.NET Framework 3.5(包含 2.0 和 3.0)”。 - 或者手动下载并安装 .NET Framework 2.0 SP2 安装包。 #### 2. 使用管理员权限运行命令提示符 在标准用户权限下,可能无法访问系统目录。应以管理员身份运行命令提示符: - 打开“开始菜单”,搜索 `cmd`,右键选择“以管理员身份运行”。 - 然后再次执行命令: ```cmd cd /d C:\Windows\Microsoft.NET\Framework64\v2.0.50727 ``` #### 3. 清理 Temporary ASP.NET Files 如果目标路径下的 `Temporary ASP.NET Files` 文件夹存在访问冲突,可尝试手动清理: - 打开资源管理器,进入: ``` C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files ``` - 删除该目录下的所有子文件夹和文件。 - 然后重新尝试进入目录执行操作。 #### 4. 设置目录访问权限 如果当前用户没有访问权限,可以手动设置目录权限: - 右键点击 `C:\Windows\Microsoft.NET\Framework64\v2.0.50727` 目录 → “属性” → “安全” → “编辑”。 - 添加当前用户或 `IIS APPPOOL\{YourAppPoolName}` 账户,并赋予“读取和执行”权限。 - 确保 `NETWORK SERVICE` 或 `IIS APPPOOL` 账户具有写入权限,以避免 ASP.NET 编译时出现异常[^2]。 #### 5. 重新注册 ASP.NET 如果路径存在但功能异常,可以尝试重新注册 ASP.NET: - 以管理员身份打开命令提示符,执行以下命令: ```cmd cd /d C:\Windows\Microsoft.NET\Framework64\v2.0.50727 aspnet_regiis.exe -i -enable ``` - 此操作将重新安装并启用 ASP.NET 2.0,修复可能的注册问题[^4]。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值