【问题标题】:Using VSCode: How to debug a mono process which is started from another mono process使用 VSCode:如何调试从另一个单声道进程启动的单声道进程
【发布时间】:2015-05-18 10:33:25
【问题描述】:

我有一个进程“a.exe”,我可以毫无问题地对其进行调试。

mono --debug --debugger-agent=transport=dt_socket,server=y,address=127.0.0.1:55555 a.exe

当我想调试由 'a.exe' 而不是 'a.exe' 本身启动的新进程 ('b.exe') 时,会出现此问题。这是代码。

var startUpInfo = new ProcessStartInfo('b.exe', argumentsOfB);
Process.Start(startUpInfo);

我必须将与上述相同的选项传递给 mono 才能调试“b.exe”并使用 VSCode 附加到指定的 url 和端口。

问题是 Process.Start() 只接收我的 exe 的参数,而不是单声道。

可以这样做吗?还是有其他方法可以解决这个问题?

我的环境

  • OSX 10.9.5
  • 单声道 4.0
  • VSCode 0.1.0

【问题讨论】:

    标签: c# debugging mono visual-studio-code


    【解决方案1】:

    只需将“mono”传递给 ProcessStartInfo 并添加所有参数(mono 的调试参数、*.exe 和程序的参数)就可以解决问题。如果您希望能够调试 a.exe 和 b.exe,请确保使用不同的端口。

    【讨论】:

    • “不同的端口”是什么意思?
    • VS Code 调试器需要将单声道运行时连接到“调试端口”,即上面的“55555”。如果您需要调试多个运行时进程,则单声道运行时必须提供不同的调试端口。所以你的第二个运行时可以使用'55556'。在 VS Code 中,一个调试会话将连接到端口“55555”,另一个会话将连接到“55556”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 2013-04-05
    相关资源
    最近更新 更多