我试图在visual studio 2013更新3上运行任何程序,我得到以下警告框:
Id为####的进程未运行。
每次都有不同的身份证号码显示。
在错误窗口,我得到这个错误消息:
程序“[3148]iisexpress.exe”已退出,代码为-1073741816 (0xc0000008)“指定了一个无效的句柄”。
有时它运行时,我在浏览器中得到以下消息:
该网页不可用。
为什么会发生这种情况,我该如何解决它?
我试图在visual studio 2013更新3上运行任何程序,我得到以下警告框:
Id为####的进程未运行。
每次都有不同的身份证号码显示。
在错误窗口,我得到这个错误消息:
程序“[3148]iisexpress.exe”已退出,代码为-1073741816 (0xc0000008)“指定了一个无效的句柄”。
有时它运行时,我在浏览器中得到以下消息:
该网页不可用。
为什么会发生这种情况,我该如何解决它?
当前回答
如果您使用的是64位机器
那么问题可能是由于Visual Studio使用32位的IIS-Express。
解决方法:在Visual Studio中,进入“工具”菜单>选项>项目和解决方案> Web项目>启用“使用IIS Express的64位版本”选项,单击“确定”
其他回答
我在新机器和新安装的VS 2022上解决这个问题的方法是安装3.1框架。因此,请检查确保项目所期望的框架已安装在本地机器上。
看起来有很多有效的解决方案,也有一些行不通……
在几次测试迭代之后,我的问题不断浮出水面。 是的,重启PC和/或VS可以解决这个问题…但暂时。
我的解决方案是撤销几天前启用的安全更改 早于勒索软件保护下的受控文件夹访问。
我通过以下方法撤销了这一更改: (右击开始) 设置->更新和安全->Windows安全->病毒和威胁防护->病毒和威胁防护设置->管理设置
受控文件夹访问 单击->管理受控文件夹访问 (这也是勒索软件保护屏幕)
关闭受控文件夹访问。
这对我来说是100%的问题,因为我可以在不重新启动VS的情况下运行我的测试。
我在尝试运行一个项目时遇到了这个问题,这个项目已经在我使用过很多次的机器上运行了很多次。清理我的IIS Express目录和.vs目录无效,设置环境变量也无效。我甚至尝试重新克隆我的存储库到一个不同的文件夹,但没有成功。
通过尝试通过命令行运行,我发现了一个更有用的信息:
dotnet run --project [startup project path]
我看到项目试图使用。net 6.0.5运行,但我只安装了。net 6.0.4。从微软网站上安装最新的。net 6.0.5成功了。
TL;DR:如果你安装了正确的。net Core(我猜是。net)运行时,请安装任何补丁更新,如果没有最新版本,请重新安装。
细节: 类似于其他几个答案,他们只是没有安装正确的。net核心。我试图运行一个。net Core 3.1 web应用程序,它在之前的几个月里工作得很好,但突然发生了这种情况。
我确实安装了3.1(运行时3.1.21和3.1.22)。然而,12天前已经发布了一个新的版本(3.1.23),安装它就解决了这个问题。
我不知道这是因为它知道有一个新补丁,而我没有,所以它无法运行,还是因为我的3.1.22安装有问题。值得尝试安装最新的补丁,或重新安装现有的安装。
关于第一个错误:
ID为####的进程未运行
当iisexpress无法绑定到端口时,有时会出现这种情况。一个可能的原因是其他一些进程已经绑定到该端口。Visual Studio将启动IISExpress.exe进程(它将无法绑定到端口并再次退出),然后附加到现在终止的进程,从而导致上述错误。
要检查,请注意项目设置中的端口号(例如12116),然后尝试:
netstat -ano | find "12116"
如果另一个进程打开了端口,这将给出它的PID。然后,您可以选择终止有问题的进程或重新分配您自己的端口号。