【问题标题】:Visual studio - Attach debugger to remote process - programaticallyVisual Studio - 以编程方式将调试器附加到远程进程
【发布时间】:2018-08-04 23:25:06
【问题描述】:

我正在尝试编写给定机器和进程名称的代码,在 Visual Studio 中启动调试器并连接到远程机器上的进程。

我可以手动成功,但是,我寻找了如何使用 DTE 对象进行 id 的指南,但没有成功。

我尝试了以下方法: https://social.msdn.microsoft.com/Forums/vstudio/en-US/69abdaf1-60b1-4ffd-ad33-2d319cb13316/how-do-i-automate-attaching-the-debugger-to-a-remote-process?forum=vsx

还有:https://blogs.msdn.microsoft.com/csharpfaq/2011/03/28/how-to-programmatically-launch-debugger-in-a-remote-machine/

在第一个解决方案中,没有任何反应,并且“LaunchDebugTargets3”方法返回非零代码。第二个在调用方法时抛出一个通用的失败异常:“AttachDebugger”。

有人可以帮我吗?

【问题讨论】:

    标签: c# visual-studio debugging remote-debugging vsix


    【解决方案1】:

    设法解决它。

            var debugger = dte.Debugger as EnvDTE80.Debugger2;
            var transport = debugger.Transports.Item("Remote");
            var process = debugger.GetProcesses(transport, "remoteMachineName").Item("your-process.exe") as EnvDTE80.Process2;
            process.Attach();
    

    【讨论】:

    • 感谢分享解决方案,您可以将其标记为答案以帮助更多人。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-17
    • 2011-03-31
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多