如何找出w3p.exe附加的调试器

时间:2013-07-31 05:49:37

标签: visual-studio-2010 debugging iis-7 asp-classic

我正在尝试在VS 2010中的类ASP项目上设置调试,并且正在尝试将它的调试器附加到w3p.exe。我使用的是Windows 7 64位和IIS 7.5。我以前在另一台机器上成功使用过这种方法几次。

但是,我发现这次我无法附加调试器。它说:

Unable to attach to the process. A debugger is already attached.

但我无法弄清楚它可能是什么。我怎么能确定这个?或者它可能是别的吗?我重新启动了我的电脑,还看不到任何看起来像调试器的运行迹象。

设置

如果它有帮助,这是我用来设置环境的步骤,我从之前的成功尝试中记录了这些步骤:

  • 创建新的空Visual Basic .NET Web(最好在C:\ inetpub \ wwwroot \中创建,否则在加载站点时会出现安全/ ACL问题。)
  • 将站点文件夹的内容复制到项目文件夹。
  • 在解决方案资源管理器中,选择显示不在项目中的所有文件。选择所有文件并右键单击并选择:“包含在项目中”。
  • 在项目属性下 - >网络 - >设置为使用IIS并以URL http://mysite.local
  • 开头
  • 在hosts文件中将mysite.local指向127.0.0.1
  • 在IIS设置新网站中指向具有mysite.local主机标头的文件
  • 转到应用程序池,确保mysite.local设置为经典模式。没有托管代码。
  • 在ASP下 - >启用父路径并确保启用服务器端调试
  • 在错误页面下,确保显示完整的详细信息。

在Visual Studio 2010中进行调试

  • 以管理员身份运行VS 2010
  • 在您的项目中,使用Ctrl + F5无需调试即可运行
  • 现在,在菜单中转到Debug - >附加到流程 - 这是我失败的地方
  • 从所有用户勾选显示流程并在所有会话中显示流程
  • 确保将其设置为自动确定要调试的代码类型
  • 查看列表中的w3p.exe进程,并根据IIS POOL \ site name选择正确的进程。
  • 设置断点并刷新 - 正常调试。

1 个答案:

答案 0 :(得分:2)

您是否在计算机上运行了一些调试诊断工具。有时回来我遇到了同样的问题,调试诊断工具正在调试我的w3p进程。