我正在编写一个简单的VisualStudio插件,将调试器附加到任何IIS进程(w3wp.exe)。这是我第一次写一个VS插件。我使用VS模板创建了初始插件,并成功显示了一个带有显示w3wp进程的列表框的winform。我无法找到有关如何以编程方式将当前Visual Studio实例附加到进程的信息。我已经有了进程ID。有人能指出我正确的方向吗?我查看了MSDN网站,但找不到哪个部分。
答案 0 :(得分:1)
我不确定附加组件,但是你可以使用VS Macro轻松完成:
例如,以下代码会将当前VS实例附加到它发现正在运行的IISExpress的第一个副本。如果您可以访问附加组件中的DTE,那么您可以执行类似的操作(我没有编写附加组件,因此我不确定)。
Public Sub AttachToIISExpress()
For Each Process As EnvDTE.Process In DTE.Debugger.LocalProcesses
If (Process.Name.IndexOf("iisexpress.exe") <> -1) Then
Process.Attach()
Return
End If
Next
End Sub