将调试器附加到IIS实例

时间:2009-05-11 16:46:34

标签: c# asp.net visual-studio-2005 debugging

我在XP机器和Visual Studio 2005上安装了IIS 5.1。如何将调试器连接到IIS实例。

BTW:我没有在正在运行的进程中看到IIS进程,或者我可能不知道要查找什么。

8 个答案:

答案 0 :(得分:109)

在Visual Studio中:

  1. 点击菜单栏中的“调试”
  2. 点击“附加到流程”
  3. 选中左下角的“显示所有用户的流程”复选框
  4. 从流程列表中选择 aspnet_wp.exe w3p.exe w3wp.exe
  5. 点击“附加”

答案 1 :(得分:14)

只是澄清Jimmie R. Houts回答......

如果要调试Web应用程序VS和IIS,可以执行以下操作:

  1. 在IIS(虚拟目录等)中托管网站。
  2. 然后在VS2005中执行此操作:

    • 右键单击Web项目→属性→ 启动选项→使用自定义服务器→基本URL→输入站点地址为 在IIS中托管。
    • 点击 F5 ,您就可以调试代码
  3. 同样适用于VS 2008。

答案 2 :(得分:12)

我正在使用IIS 7.5版运行Windows 7,我还需要勾选“显示所有用户的进程”和“在所有会话中显示进程”框 - 位于“附加到进程”对话框的底部。 / p>

此外,我已将我的应用程序放在特定的应用程序池中,这意味着您可以看到它标记为w3wp.exe。

答案 3 :(得分:5)

IIS进程是aspnet_wp.exe。

事实上,当您将项目设置为使用IIS进行调试时,附加到aspnet_wp.exe进程就是VS所做的。

答案 4 :(得分:3)

ASP.NET进程的可能名称:

  • w3wp.exe是IIS 6.0及更高版本。
  • aspnet_wp.exe是IIS的早期版本。
  • iisexpress.exe是IISExpress。
  • dotnet.exe是ASP.NET Core。
  • inetinfo.exe是在进程内运行的较旧的ASP应用程序。

来自Find the name of the ASP.NET process

答案 5 :(得分:1)

您还需要从控制面板打开Internet信息服务>管理工具。右键单击相关网站,单击主目录选项卡,然后选择配置按钮。这将打开一个带有三个选项卡的新表单 - 单击调试表单并在调试标志部分中选择两个选项。这也是调试的必要条件。

答案 6 :(得分:0)

使用附加到IIS插件(VS2015VS2017)插件可以节省几次点击 - 特别是在处理IIS托管站点的生态系统时(一个前端有多个后端服务的人说)

答案 7 :(得分:0)

如果您看到流程 [例如IIS Worker Process (w3wp.exe)] 运行的是任务管理器,但不在 debug > attach to process 中的进程列表中,您可能需要以管理员身份运行 Visual Studio。