我试图在visual studio 2013更新3上运行任何程序,我得到以下警告框:

Id为####的进程未运行。

每次都有不同的身份证号码显示。

在错误窗口,我得到这个错误消息:

程序“[3148]iisexpress.exe”已退出,代码为-1073741816 (0xc0000008)“指定了一个无效的句柄”。

有时它运行时,我在浏览器中得到以下消息:

该网页不可用。

为什么会发生这种情况,我该如何解决它?


当前回答

关于第一个错误:

ID为####的进程未运行

当iisexpress无法绑定到端口时,有时会出现这种情况。一个可能的原因是其他一些进程已经绑定到该端口。Visual Studio将启动IISExpress.exe进程(它将无法绑定到端口并再次退出),然后附加到现在终止的进程,从而导致上述错误。

要检查,请注意项目设置中的端口号(例如12116),然后尝试:

netstat -ano | find "12116"

如果另一个进程打开了端口,这将给出它的PID。然后,您可以选择终止有问题的进程或重新分配您自己的端口号。

其他回答

我也有同样的问题。重新启动Visual Studio对我来说很有效。

我尝试了这里的大部分方法都没用,但终于找到了修复我的机器的方法,所以我想分享一下:

按照之前在另一个问题中的建议,我已经使用netsh添加::来ipllisten。结果我的解决方案是取消这个,只需在他们的建议中替换add:

netsh http delete iplisten ipaddress=::

你也可以手动从注册表中删除HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\ListenOnlyList并重新启动服务/你的电脑。

我最近在使用VS 2013和IIS Express时遇到了同样的问题:

"Process with an ID #### is not running ." //每次都会显示不同的ID号。

以下是我发现的对我有效的解决方法:

1)进入文档-> IIS Express -> config -> applicationhost.config

2)打开applicationhost。在notepad++中配置

3)在标签下,有几行代码看起来像这样:

    <add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true">
                 <processModel loadUserProfile="true" />
        </add>

4)去掉这两条线

                <processModel loadUserProfile="true" /> 
        </add>

5)将第一行的END改为

            <add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />

注意,我所做的只是在“true”之后添加“/”来关闭标签。

我现在能够运行我的项目在一个网络浏览器和调试我的代码。

此外,我已经更新到更新4,但也有同样的问题。我相信附加applicationhost。配置文件是什么解决了这个问题。

我希望这能有所帮助!

对我来说,这就是解决方案,

关闭所有正在运行的Visual studio实例 打开解决方案文件夹并删除.vs文件夹(隐藏文件夹) 打开运行命令 输入iisreset并按Ok,您可能会看到一个命令提示符和 等待它完成,它将自动关闭

现在打开visual studio并运行你的项目,它应该可以运行。

cmd - regedit-HKEY_LOCAL_MACHINE-SYSTEM-CurrentControlSet-Services-HTTP-START=3

电脑重新启动。

为我工作!