我在使用 Visual Studio 进行进程附加时遇到了 intermittently 的问题,无法看到正在运行的 W3wp.exe 进程,其他实例的 Visual Studio 可以看到该进程。重新启动 Visual Studio 后,该进程将出现在附加进程列表中。
点击刷新按钮没有任何影响,我可以在看不到该进程的情况下使用 Web 应用程序。
有什么想法吗?
我在使用 Visual Studio 进行进程附加时遇到了 intermittently 的问题,无法看到正在运行的 W3wp.exe 进程,其他实例的 Visual Studio 可以看到该进程。重新启动 Visual Studio 后,该进程将出现在附加进程列表中。
点击刷新按钮没有任何影响,我可以在看不到该进程的情况下使用 Web 应用程序。
有什么想法吗?
请确保“显示所有用户的进程”复选框已被勾选。
当处于“附加到进程”窗口时,左下角有一个名为“显示所有用户的进程”的复选框。
希望这能对您有所帮助,Kev Hunter!
w3wp.exe 在运行过程中不会显示,除非真的有 Web 应用程序实例正在运行。
首先尝试访问您的 Web 页面,当它第一次显示时,请尝试附加调试器。此时进程应该会出现。
我猜我的回答可能有点晚,但肯定可以帮助某些人。
我遇到了类似的问题,但找不到解决方法。
发生了什么事情
如果您无法在附加进程
中找到实例,则需执行以下操作:
IIS -> 右键单击正在工作的应用程序 -> 管理应用程序 -> 浏览
这将创建一个新实例。现在,您可以打开Visual Studio并尝试附加进程。
您需要以管理员权限运行Visual Studio(以管理员身份运行),才能查看w3wp进程。
我遇到了同样的问题。我尝试在IIS中重启站点和回收应用程序池,但都没有帮助。当我点击IIS中的 Browse: * (http) 后,w3wp进程出现了。
首先,在IIs中浏览您的网站。如果一切正常,以管理员身份运行vs,然后您可以附加w3wp.exe
。
我想分享一下我的经验,供未来的读者参考。
请注意,如果您有一个 Web 服务器群集 配置(用于负载平衡等),w3wp
进程可能不会在您期望的机器上启动。特别是如果您正在使用不同的网站/应用程序,例如带有后端 Web API 的前端网站。
除非您的网站仅配置为在 单个 IIS 实例 上运行,否则 w3wp
进程可能会在 Web 群集中的其他计算机上启动。
这可能是网络团队/部门的错误配置或意图行为。我没有必要的经验来准确定位应如何配置。
在 MSDN 上还找到了一个相关页面:
当在 Visual Studio 中调试 WCF 服务时,可以采用以下快速修复方法:
打开客户端应用程序的 web.config 文件。
查找未出现在“附加到进程”中的服务的终结点条目。
按下 Ctrl + 单击终结点 URL,以便在 Visual Studio 内部浏览器中加载服务窗口。
就这样。IIS 将启动,现在您可以回到服务上并在进程列表中找到 W3WP.exe。
此外,请确保已选中“显示所有用户的进程”。