我正在本地机器(Windows 7)上开发ASP.Net项目(框架2.0)。 IIS 7.5是本地Web服务器。
当我在本地运行项目时Environment.GetFolderPath(Environment.SpecialFolder.InternetCache)
返回空字符串。
我设置这个新的开发机器时遇到了这个问题,但有点羞怯和沮丧,但是不记得解决方案,也无法通过谷歌搜索找到解决方案。运行XP的开发团队中的其他人不会遇到这个问题。
我期待C:\Users\DefaultAppPool\AppData\Local\Microsoft\Windows\Temporary Internet Files
的回复。
不确定这是否是设置问题,或者我可以在某处设置环境变量。
谢谢,杰夫
答案 0 :(得分:5)
我99%肯定这会归结为权限问题。在IIS7中,有一个名为AppPoolIdentity的新“用户”,它是应用程序池的默认标识。此用户的权限远低于IIS 6中的默认值。
我可以重现你的问题,我必须将我的AppPool设置为LocalSystem或具有管理权限的特定用户运行,以检索Environment.SpecialFolder.InternetCache,当我查看相关文件夹并查看其权限时这是有意义的。
请注意,运行具有更高权限的IIS应用程序池存在安全问题。