【发布时间】:2026-01-23 01:25:01
【问题描述】:
我正在尝试在 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 问题)。
- 已将站点文件夹的内容复制到项目文件夹。
- 在解决方案资源管理器中,选择显示所有不在项目中的文件。选择所有文件并右键单击并选择:“包含在项目中”。
- 在项目属性下 -> Web -> 设置为使用 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 -> Attach to Process -- 这是我失败的地方
- 勾选显示所有用户的进程并显示所有会话中的进程
- 确保将其设置为自动确定要调试的代码类型
- 查看列表中的 w3p.exe 进程,并根据 IIS POOL\站点名称,选择正确的进程。
- 设置断点并刷新 -- 正常调试。
【问题讨论】:
-
你解决过这个问题吗?我也有同样的问题!
标签: visual-studio-2010 debugging iis-7 asp-classic