我想打印调试语句输出窗口(或其他任何地方,我可以看到它)在Visual Studio 2005中我见过的建议说使用打印在Visual Studio 2005安慰
OutputDebugString("message");
并确保我有
选项 - >调试 - >重定向所有输出窗口的文本即时窗口检查
而代码编译好,我没有看到任何输出,有什么诀窍?
我想打印调试语句输出窗口(或其他任何地方,我可以看到它)在Visual Studio 2005中我见过的建议说使用打印在Visual Studio 2005安慰
OutputDebugString("message");
并确保我有
选项 - >调试 - >重定向所有输出窗口的文本即时窗口检查
而代码编译好,我没有看到任何输出,有什么诀窍?
您必须先在调试模式下运行。
然后使用下面的代码(从MSDN):
class Test{
static void Main()
{
Debug.Listeners.Add(new TextWriterTraceListener(Console.Out));
Debug.AutoFlush = true;
Debug.Indent();
Debug.WriteLine("Entering Main");
Console.WriteLine("Hello World.");
Debug.WriteLine("Exiting Main");
Debug.Unindent();
}}
你会看到在输出窗口中的一切。您可能需要转到View-> Output菜单才能使此窗口在IDE中可见。
对不起,我应该提到我正在使用C++。我猜这是C#? – opsb 2010-11-01 11:49:24
如果您使用的是OutputDebugString,那么您也可以使用SysInternal's DebugView来查看输出。在你解决你的Visual Studio调试问题之前,DebugView应该做到这一点。
神奇的,完美的作品!我不能调试器工作,所以这至少会让我看到发生了什么。 – opsb 2010-11-01 12:05:38
Alt-2或View-> Output打开输出窗口。默认情况下,它应该已经打开,它通常位于IDE底部的选项卡式窗口中(但取决于您的自定义布局),并标记为“Output”。
输出不针对控制台,您需要输出到stdout
,并为其创建控制台窗口。
如果你的代码不打的线,那么它可能:
人民币在VS的输出窗口:
检查,如果你有“程序输出”选中,如果是,检查它!!!
尽管此控件存在于输出窗口的上下文菜单中,但它在重定向它时会影响立即窗口中的输出。
您是否已验证调试代码实际上是否已命中通过放置一个断点? – 2010-11-01 11:22:02
您需要使用调试命令,而不是运行。 – 2010-11-01 11:30:32
亚历克斯:我已经击中F5开始调试。 – opsb 2010-11-01 11:40:17