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

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

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

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

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

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

该网页不可用。

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


当前回答

删除隐藏的.vs文件夹对我来说不起作用,因为在我的应用程序中指定的端口正在被另一个应用程序使用。

进入属性,然后点击web选项卡。 更改“开始Url”和“项目Url”中的端口号。 单击“创建虚拟目录”。 保存并按F5。

其他回答

关于第一个错误:

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

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

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

netstat -ano | find "12116"

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

当我得到这个的时候,当管理员似乎并没有什么不同。

确保所有iisexpress.exe进程都已关闭 编辑< path_to_your_solution > \ \ .vs \ config \ applicationhost.config的解决方案 修改站点名称。 <site name="MySite" id="1" serverAutoStart="true"> : <site name="MySite2" id="1" serverAutoStart="true"> 这为我解决了问题

下面的步骤可以帮我解决这个问题:

关闭Visual Studio 导航到存储解决方案文件的文件夹,并删除隐藏的.vs文件夹。 重启Visual Studio 点击F5, IIS Express将正常加载,允许您调试。

注意:根据我的经验和评论中的其他人,这个问题似乎是由于在不同的工作站、环境或Visual Studio版本之间移动项目引起的。在.vs文件夹中必须包含一些特定于环境的信息。

这可能有多种原因,如果您在命令行中运行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

很好,很容易解决,但那是我的错!

另一个可能发生这种情况的原因是,如果你升级了Microsoft.AspNetCore.Components, . net Core Web应用程序就会出现这种情况。* NuGet包到新版本,但不安装新的SDK,

在我的例子中,它是将Microsoft.AspNetCore.Components.WebAssembly从6.0.0升级到6.0.1,并且没有安装。net 6.0.1 SDK