1

无法在 Monodevelop 中使用正常调试,因此我尝试按照此处所述进行远程调试
这是整个过程:


在终端中,键入:

export MONODEVELOP_SDB_TEST="YES"
monodevelop &

Monodevelop 开始。

  1. 打开您的解决方案
  2. Run -> Run With -> Custom Command Mono Soft Debugger
  3. 填写字段:
    1. 命令:/home/nico/src/CmisSync/bin/SparkleShare.exe
    2. 参数:(-debug --debugger-agent=transport=dt_socket,address=127.0.0.1:10000不确定是否需要)
    3. 知识产权:127.0.0.1
    4. 港口:10000
    5. 输出:1
  4. Listen
  5. 返回终端,按:

mono --debug --debugger-agent=transport=dt_socket,address=127.0.0.1:10000 ./bin/SparkleShare.exe


问题: Monodevelop 在第 4 步崩溃,一旦我按下Listen

System.InvalidOperationException: Standard output has not been redirected
  at System.Diagnostics.Process.get_StandardOutput () [0x00043] in /build/buildd/mono-2.10.8.1/mcs/class/System/System.Diagnostics/Process.cs:663 
  at MonoDevelop.Core.Execution.ProcessWrapper.CaptureOutput () [0x00000] in <filename unknown>:0 
  at System.Threading.Thread.StartInternal () [0x00016] in /build/buildd/mono-2.10.8.1/mcs/class/corlib/System.Threading/Thread.cs:703

当我按下Connect而不是Listen.

也许我输入了错误的值Output源代码显示需要一个整数值

Monodevelop 的这一部分是非常实验性的(他们不打算实现异常处理),因此在这种情况下向他们发送错误报告不会有成效......我很确定我只是误解了一些东西。

在此处输入图像描述

4

1 回答 1

3

这是正确的程序:

在终端中,键入:

export MONODEVELOP_SDB_TEST="YES"
monodevelop &

Monodevelop 开始。

  1. 打开您的解决方案
  2. Run -> Run With -> Custom Command Mono Soft Debugger
  3. 填写字段:
    1. 命令:空
    2. 参数:空
    3. 知识产权:127.0.0.1
    4. 港口:10000
    5. 输出:空
  4. Listen
  5. 返回终端,按:

mono --debug --debugger-agent=transport=dt_socket,address=127.0.0.1:10000 ./bin/SparkleShare.exe

现在可以在 Monodevelop 中调试应用程序了!

于 2012-12-06T08:58:56.660 回答