安装Visual Studio 2012并打开解决方案后,我收到一系列错误,格式如下:

Web应用程序项目Foo配置为使用IIS。无法访问IIS元数据库。您没有足够的权限访问计算机上的IIS网站。

我为我们的每个web应用程序都得到了这个。


我尝试过的事情:

以管理员身份运行Visual Studio运行aspnet_regiis.exe-ga MyUserName运行aspnet_regiis.exe-i

这些似乎是解决这个问题的常见方法,但我没有成功。

还有什么我可以尝试做的吗?


当前回答

在windows 81上,从admin命令提示符,使用:

icacls "C:\Windows\System32\inetsrv\config" /t /grant "IIS AppPool\DefaultAppPool":(R)

然后返回VS,右键单击失败的项目,选择重新加载。

归功于:IIS7权限概述-ApplicationPoolIdentity

其他回答

我也有类似的问题。我的解决方案是对“以管理员身份运行”这一答案的扩展,我希望有人会觉得这很有用。

我在运行VS2012,几乎每次我都要做右键单击,以管理员身份运行。我对此感到厌倦,所以我在快捷方式上进入它的财产,单击“高级”,然后单击“以管理员身份运行”选项。现在,每当我从该快捷方式打开VS2012时,它总是以管理员身份运行。

从该快捷方式位开始很重要。我继续分支我的项目,并将分支下载到一个新的本地文件夹。然后,当我从快捷方式打开它时,我没有问题。但是,如果我直接进入文件夹,在没有快捷方式的情况下在本地运行项目,它就不会以管理员身份运行,因此我出现了这个错误。

一旦我像往常一样先打开了VS2012,然后使用File/Open/Project,它再次运行起来没有问题。(因为我是以管理员身份运行的)。但当我使用windows文件管理器打开解决方案时,我并没有以管理员身份运行。

其他建议似乎有些极端,但这很简单,所以我倾向于先尝试一下。

希望这有帮助。

我正在使用Win 8 Pro和VS 2013。在尝试了此页面中的所有内容之后。。。我只是重新安装了IIS Express 8,现在一切正常(即使没有以管理员身份运行)。

我的结论是,这是一个相当普遍的错误,有多个根本原因。

谢谢所有回答的人。由于关闭了很长一段时间,我无法提供太多反馈,但我最终解决了我的问题。我尝试了许多其他解决方案,但它们没有解决我的问题,但我确信,当根本原因不同时,它们会有所帮助。

我的解决方案

我通过关闭Windows 7中的IIS和.Net Framework功能,然后重新打开这些功能,解决了这个问题。似乎是重新安装解决了我的问题。我仍然不知道是什么导致了这个问题,但至少我团队中的其他一名开发人员也有同样的问题。

我认为我们在工作中遇到了类似的问题。对我们来说,解决方案是进入“控制面板”->“程序和功能”->“打开或关闭Windows功能”…在这里面,我们必须选择“Internet信息服务”->“Web管理工具”->“IIS 6管理兼容性”->IIS元数据库和IIS 6配置兼容性”。

试试看,如果有帮助,请告诉我!

注意:我们在Windows 7上运行IIS 7.5,同时使用Visual Studio 2005和2010,并使用超老式的Web服务(.asmx)。。。

还有一件事你可以尝试:

检查是否有挂起的Windows更新。如果需要,请在尝试其他操作之前重新启动。

我倾向于从不关闭我的机器,所以我有很多人在等待重启。这就解决了问题。