2

我有几个进程正在运行,我想通过PowerShell附加到VS调试器。通过PowerShell将调试器附加到多个进程

目前,我可以这样做:Get-Process NServiceBus.Host | Debug-Process

如果只有一个进程,然后提示我选择正确的调试器,我可以继续下去。

但是,如果有多个进程,当系统提示您为第二个进程选择调试器时,我无法选择当前正在运行的Visual Studio实例。

如何使用powershell将多个进程附加到正在运行的visual studio for debuggin实例?

+0

我从来不知道或试图将多个进程附加到VS调试器。我根本不认为这是可以做到的。 – 2015-02-23 21:09:42

+0

@JohnPeters我通过VIsual Studio Debug> Attach to Process每天做几次。 – 2015-02-23 21:13:55

+0

哇! VS允许同时进行多个进程调试? – 2015-02-23 21:15:04

回答

5

获取活动的Visual Studio实例的保持......

$ DTE = [System.Runtime.InteropServices.Marshal] :: GetActiveObject( “VisualStudio.DTE”)

.. ,并使其附着到一组进程......

($ dte.debugger.localprocesses |凡名称 - 匹配 “过程(一个|二).EXE”)。安装()

...似乎每次连接之间可能需要延迟,如果它需要太长的时间,否则视觉工作室正忙于拒绝呼叫。

+0

感谢您的提示,但不知何故,它无法正常工作。我得到这个错误:+($ dte.debugger.localprocesses | Where <<<< Name -Match“proc(one | two).exe”)。附加() + CategoryInfo:InvalidArgument:(:) [Where-Object ],ParameterBindingException + FullyQualifiedErrorId:CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.WhereObjectCommand – etalon11 2015-12-23 08:35:42

+0

第二行需要是这样的...我想我只有一个进程发现在我运行时...怀疑不是零或很多过程可能会导致您看到标准具错误11。 $ dte.debugger.localprocesses |名称 - 匹配“proc(one | two).exe”| %{$ _。Attach()} – softwarebear 2017-09-20 08:57:18

相关问题