廖老师--中国IT实验室-技术工程师 服务器技术交流QQ群:42667154 (加入要求有服务器维护经验者) 本人有多年Windows/Linux服务器维护管理经验,如有兼职或服务器解决方案需求可与我联系!
编译器错误信息: CS0016: 未能写入输出文件 解决方法
上一篇 /
下一篇 2008-06-25 10:30:25
错误 提示的是
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files里面的某个文件没有写入权限
但是即使我给他授予Everyone的完全控制权限也不行
查看了一下微软的官方说明,问题解决:
1.给C:\temp添加用户NETWORK SERVICE
2.授予NETWORK SERVICE完全控制权限
3.在系统环境变量TEMP和TMP里加入%SystemRoot%\TEMP
然后就OK了 如果还不行,微软建议你重启IIS 或 Windows
附:
微软官方原文http://support.microsoft.com/default.aspx?scid=kb;en-us;825791
SYMPTOMS
loadTOCNode(1, 'symptoms');When you view a Microsoft ASP.NET Application in a Web browser, you may receive the following error messages:
For the Microsoft .NET Framework version 1.1, the error message is the following:CS0016: Could not write to output file 'c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\application1\c11b43f6\cf3ec03\rizcntet.dll' . The directory name is invalid.
For the .NET Framework 1.0, the error message is the following:CS0013: Unexpected error writing metadata to file 'C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705\Temporary ASP.NET Files\application2\3fc72f26\eb731247\ev2bslce.dll'. The directory name is invalid.
Back to the top
CAUSE
loadTOCNode(1, 'cause');The system
TEMPand
TMPvariables point to a folder that does not exist. The compiler generates temporary files in the folder where the
TEMPand the
TMPvariables point to before the files are copied to the Temporary ASP.NET Files folder. However, the folder where the system variables point to is deleted when you restart the computer. Therefore, the compiler cannot generate the temporary files.
Back to the top
RESOLUTION
loadTOCNode(1, 'resolution');| 1. | Create a temporary folder under%Systemroot%, and then name itTemp. |
| 2. | Grant full permissions on the Temp folder to theaspnetuser account in .NET Framework 1.0 or to theNETWORK SERVICEuser account in .NET Framework 1.1. |
| 3. | Right-clickMy Computer, and then clickProperties. |
| 4. | On theAdvancedtab, clickEnvironment Variables. |
| 5. | Select theTEMPvariable underSystem variables, and then clickEdit. |
| 6. | Type%SystemRoot%\TEMPin theVariable Valuebox, and then clickOK. |
| 7. | Repeat steps 5 and 6 to edit theTMPvariable. ClickOKtwo times. |
| 8. | ClickStart, and then clickRun. |
| 9. | To reset Internet Information Services (IIS), typeiisreseton the command prompt.
NoteIf the error message that is mentioned in the "Symptoms" section of this article persists, restart the computer. |