如何自动附加VS到另一个进程进行调试?

发布于 2024-11-09 15:04:25 字数 366 浏览 0 评论 0原文

我正在调试部署在 IIS 7.5 (VS 2010/Windows 7 x64) 上的 ASP.NET 应用程序。进行更改后,我必须将其部署到 IIS 文件夹,然后执行以下操作(你们中的任何人都应该已经知道,我只是列出来演示它们是多么无聊和耗时):

  • 单击“调试”菜单,选择附加到进程
  • 从列表中,选择在所有会话中显示进程
  • 选择正确的 w3wp.exe 进程
  • 单击附加
  • 再次单击附加

,这是不必要的工作负载。由于我们的系统架构师的原因,这是唯一的方法,我们可以通过 F5 按钮直接进行调试,但我想知道是否有解决方法,这样我就可以通过单击或快捷键来完成所有这些操作。

非常感谢。

I'm debugging an ASP.NET application deployed on IIS 7.5 (VS 2010/Windows 7 x64) . After I make changes, I have to deploy it to the IIS folder and then do the following things (anyone of you should already know, I just list to demonstrate how boring and time-consuming they are):

  • Click on the Debug menu, choose Attach to Process
  • From the list, choose Show processes in all sessions
  • Choose the right w3wp.exe process
  • Click attach
  • Click attach again

well, it's load of unnecessary works. Due to our system architect, this is the only way, we can debug straightforward by F5 button, but I wonder that if there's a workaround about this, so I can do all these things in on-click or short-cut key.

Thank you very much.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

Smile简单爱 2024-11-16 15:04:25

http://blog.lavablast .com/post/2008/01/11/Attach-to-Process-with-one-shortcut.aspx

在 Visual Studio 中使用以下内容创建宏:

Option Strict Off
Option Explicit Off
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Imports System.Security.Principal

Public Module RecordingModule
    Sub AttachToAspNET()
        Try
            Dim dbg2 As EnvDTE80.Debugger2 = DTE.Debugger
            Dim trans As EnvDTE80.Transport = dbg2.Transports.Item("Default")
            Dim compName As String = WindowsIdentity.GetCurrent().Name
            compName = compName.Substring(0, compName.IndexOf("\"))
            Dim proc2 As EnvDTE80.Process2 = dbg2.GetProcesses(trans, compName).Item("w3wp.exe")
            proc2.Attach2(dbgeng)
        Catch ex As System.Exception
            MsgBox(ex.Message)
        End Try
    End Sub
End Module 

将 w3wp.exe 更改为 aspnet如果这就是你想要的。然后进入快捷键并绑定一个快捷键来运行该宏。

http://blog.lavablast.com/post/2008/01/11/Attach-to-Process-with-one-shortcut.aspx

Create a macro in visual studio with the following:

Option Strict Off
Option Explicit Off
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Imports System.Security.Principal

Public Module RecordingModule
    Sub AttachToAspNET()
        Try
            Dim dbg2 As EnvDTE80.Debugger2 = DTE.Debugger
            Dim trans As EnvDTE80.Transport = dbg2.Transports.Item("Default")
            Dim compName As String = WindowsIdentity.GetCurrent().Name
            compName = compName.Substring(0, compName.IndexOf("\"))
            Dim proc2 As EnvDTE80.Process2 = dbg2.GetProcesses(trans, compName).Item("w3wp.exe")
            proc2.Attach2(dbgeng)
        Catch ex As System.Exception
            MsgBox(ex.Message)
        End Try
    End Sub
End Module 

change w3wp.exe to aspnet if thats what you want. Then go into the key shortcuts and just bind a shortcut to run that macro.

戏剧牡丹亭 2024-11-16 15:04:25

为什么不直接转到项目属性并选择“使用本地 IIS Web 服务器”。

在此处输入图像描述

如果这是远程服务器,您也可以执行此操作:将 Visual Studio 2008 与 IIS 7 结合使用
虽然文章是关于VS2008的,但是2010的概念是一样的。

Why don't you just go to project properties and select Use Local IIS Web Server.

enter image description here

If this is remote server you can do this too: Using Visual Studio 2008 with IIS 7
Although the article is about VS2008, the concept is the same in 2010.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文