我试图在visual studio 2013更新3上运行任何程序,我得到以下警告框:
Id为####的进程未运行。
每次都有不同的身份证号码显示。
在错误窗口,我得到这个错误消息:
程序“[3148]iisexpress.exe”已退出,代码为-1073741816 (0xc0000008)“指定了一个无效的句柄”。
有时它运行时,我在浏览器中得到以下消息:
该网页不可用。
为什么会发生这种情况,我该如何解决它?
我试图在visual studio 2013更新3上运行任何程序,我得到以下警告框:
Id为####的进程未运行。
每次都有不同的身份证号码显示。
在错误窗口,我得到这个错误消息:
程序“[3148]iisexpress.exe”已退出,代码为-1073741816 (0xc0000008)“指定了一个无效的句柄”。
有时它运行时,我在浏览器中得到以下消息:
该网页不可用。
为什么会发生这种情况,我该如何解决它?
当前回答
上面列出的解决方案没有一个对我有效。问题是本地应用程序主机中的某种冲突状态。配置文件。修复很简单,只需在解决方案中删除一个。对于VS2015,它应该位于<path_to_your_solution>\Solution\.vs\config\。当启动Debug时,VS将根据项目文件中的设置重新创建该文件。
其他回答
对我来说,其他的方法都没用。 我尝试过的事情:
更新并修补与Visual Studio相关的所有内容 重新安装Visual Studio 重新安装IIS Express 几个重新启动 将_WORKAROUND添加到PATH中 重命名文档下的IIS文件夹以重新生成IIS配置 手动编辑csproj文件并删除整个IIS设置部分 在VS设置中将IIS可执行文件的使用改为64位 在项目设置中更改IIS端口
在检查了该问题是否在不同的项目中持续存在之后,发现该问题只发生在一个特定的项目中。我认为我必须删除解决方案文件夹中所有特定于用户的文件(例如bin, obj, *)。缩,…) 我只是删除了整个解决方案文件夹,并在git中恢复了文件。
TLDR: 尝试删除用户特定的文件/文件夹,如bin, obj, *。缩,……
Kilanny的回答是正确的。2015年的大多数机器都是64位的,所以有很多机会你只需要在工具主导航链接菜单下启用64位选项。不需要配置其他文件或硬编码端口。此外,端口分配应该是动态的。此修复适用于2013 With Update 3和Visual Studio 2015 Community Edition。
查看下面的迷你教程图片: (我只是在改进Kilanny的答案)
我尝试了这里的大部分方法都没用,但终于找到了修复我的机器的方法,所以我想分享一下:
按照之前在另一个问题中的建议,我已经使用netsh添加::来ipllisten。结果我的解决方案是取消这个,只需在他们的建议中替换add:
netsh http delete iplisten ipaddress=::
你也可以手动从注册表中删除HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\ListenOnlyList并重新启动服务/你的电脑。
关闭VS。 导航到解决方案的文件夹,删除隐藏的.vs文件夹。 重启VS。 点击F5, IIS Express将正常加载,允许您调试。
如果这不起作用,那么:
右键单击解决方案并转到属性 点击左侧菜单Web标签 单击复选框“覆盖应用程序根Url”
然后再次运行您的项目。
这可能有多种原因,如果您在命令行中运行IISExpress.exe (\Program Files (x86)\IISExpress\ IISExpress.exe为32位,\Program Files\IISExpress\ IISExpress.exe为64位),您将获得更多详细信息。在我的例子中:
C:\Program Files\IIS Express>iisexpress.exe
Filename: \\?\C:\Users\My.Username\Documents\IISExpress\config\applicationhost.config
Line number: 15
Error: Configuration file is not well-formed XML
很好,很容易解决,但那是我的错!