【发布时间】:2021-04-14 13:22:05
【问题描述】:
我正在处理项目,我需要访问调试选项。 我尝试像往常一样运行我的应用程序,但这次我收到以下消息:
无法连接到网络服务器“IIS Express”
当我检查控制台输出时,我发现有以下注释:
未能为站点 xxx 应用程序“/”注册 URL“http://localhost:49748/”。错误描述:该进程无法访问该文件,因为它正被另一个进程使用。 (0x80070020)
为站点 xxx 应用程序“/”成功注册 URL“https://localhost:44333/”
我还发现 0x80070020 错误 - “在 IIS Express(或 IIS)的情况下,意味着它尝试侦听的端口正被另一个进程使用”(link to the similar question )。
我不明白这里发生了什么。当我尝试运行此应用程序时,我在 Visual Studio 中收到此错误,但应用程序在后台启动(我可以手动导航到 https://localhost:44333 并且应用程序在那里)。问题是我无法调试代码,因为 Visual Studio 看起来与此实例“无关”。以前 IIS Express 使用应用程序的 URL 打开新的浏览器窗口,我能够调试我的代码。
我也无法理解为什么全新项目没有出现此问题 - 我创建了新的 Web 应用程序项目来测试此行为,它符合我的预期 - 我可以在 VS 中使用调试。
到目前为止,我尝试做的是:
- 重启VS,
- 重启我的本地机器,
- 在解决方案资源管理器/属性/调试中更改应用网址,
- 从 .vs 目录中删除 applicationhost.config
没有什么对我有用。
在这个问题出现之前,我分叉了这个 repo:https://github.com/jasontaylordev/CleanArchitecture 并下载了 WSL 和 Docker - 我怀疑这会对我的解决方案产生影响,但也许这些信息会有所帮助。
有什么我可以更改/编辑以恢复我以前的行为吗?
谢谢
【问题讨论】:
-
您可以先运行一个报告来分析 IIS Express 周围的设置,docs.jexusmanager.com/tutorials/vs-diagnostics.html