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

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

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


我尝试过的事情:

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

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

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


当前回答

我今天遇到了这个问题,并通过从Project文件中删除IISUrl解决了这个问题:

右键单击项目单击“编辑”删除以下行:<IISUrl>http://localhost:xxxxx</IISUrl>重新加载项目现在,通过右键单击“项目”>“财产”>“Web”并选择“使用本地IIS Web服务器”(取消选中“使用IIS Express”),然后单击“创建虚拟目录”按钮,添加一个新的IIS虚拟目录。

其他回答

在Windows 8 Pro上:

%systemroot%\inetsrv\config

在Windows 7、8.1和10上

%systemroot%\System32\inetsrv\config 

(其中%systemroot%通常是C:\Windows)

在Windows资源管理器中导航到上面的适当位置。您将被阻止访问,弹出窗口显示:

“您无权访问此文件夹-单击“继续”可永久访问此文件夹”

单击此文件夹的“继续”,并在下面显示“导出”文件夹。我将快捷方式改回“以我的身份运行”(域和本地管理员的成员),并能够打开和部署解决方案。

在我的消息中,除了抱怨“无法访问IIS元数据库”之外,还提到了无法访问“<IISUrl>http://localhost:6416/</IISUrl>“。右键单击卸载项目,单击“编辑”,找到行“<IISUrl”http://localhost:6416/</IISUrl>“,将其注释掉。重新加载,它应该可以工作。这与管理员没有访问该地址的权限有关。

IIS Express用户-在网络共享上使用我的文档

如果IIS Express application.config位于网络驱动器上,请确保在“我的电脑”中映射并连接了该驱动器。

我正面临这个问题,当我在“我的电脑”中重新映射网络驱动器时,问题得到了解决。

我也有类似的问题。Visual Studio不会加载任何web项目,并显示错误:创建虚拟目录<myproj:myport>失败。无法访问IIS元数据库。

在我的案例中,问题的根源实际上是IISExpress。右键单击控制面板中的“程序和功能”中的“IIS Express”,然后选择“修复”,在不到两分钟的时间内修复了该问题。

更改此密钥对我有效:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\用户外壳文件夹\个人

位置不存在。