从Visual Studio调试器获取变量

时间:2012-07-02 10:13:00

标签: visual-studio debugging debuggervisualizer

我收到了一个从程序中可视化数组的任务,该任务正在VS中进行调试。有没有办法从外部程序连接到Visual Studio调试会话并从中获取数据?

2 个答案:

答案 0 :(得分:2)

理论上,您可以使用Debugger.GetExpression API从调试器中读取值并将它们发送到MATLAB,但是如果我们讨论的是相对大量的数据(例如大型矩阵或向量) ,这种解决方案具有合理性能的可能性相当小。

更简单的解决方案可能是利用您可以从调试器调用自己的方法的事实 - 在代码中定义一个方法,将数据发送到MATLAB,确保它在数据的同一位置定义定义了序列化的结构(以便调试器不会抱怨可访问性问题),然后从Watch或Immediate窗口执行该方法。

答案 1 :(得分:0)

这不完全来自外部程序,但仍然有用:msdn docsan example(或sample for C++)。现在,如果你真的想要一个extarnal程序来访问数组,你可以编写一个自定义的可视化工具,它不会显示任何东西,而是通过套接字/管道将数据发送到另一个程序(我曾经使用这个原理来获取带有音频数据的数组)在调试会话期间的Labview,非常方便)。