在Visual Studio 2010中查看控制台的输出?

我正在编写一个带有一些输出的简单C#程序( Console.WriteLine("..."); )。 问题是,我每次运行它时,都看不到输出窗口中的程序输出。

“程序输出”标签已经被选中,我已经将所有输出重定向到中间窗口,但无济于事。

如何启用查看程序的输出?

我认为问题不在于我的代码。 我尝试运行一个简单的程序,只输出一个字符串和readline“ala hello world”,我仍然无法看到任何输出。 问题在于我在错误的位置查找输出,或者Visual Studio采取行动。

debug.write方法也不起作用。

使用debug.Write ,它可以工作,尽管它之前没有。 无论是在我重新启动之前与我联系在一起的东西,还是我只需休息一下,无论哪种方式,现在都很好。 感谢所有有用的评论=)


您可以使用System.Diagnostics.Debug.WriteSystem.Runtime.InteropServices方法将消息写入输出窗口。


这里有几件事要检查:

  • 对于console.Write/WriteLine ,您的应用程序必须是控制台应用程序。 (右键单击解决方案资源管理器中的项目,选择属性 ,然后查看“应用程序”选项卡中的“ 输出类型 ”组合 - 应该是“ 控制台应用程序 ”(注意,如果您确实需要Windows应用程序或类库,不要改变这个控制台应用程序只是为了获得Console.WriteLine )。

  • 您可以使用System.Diagnostics.Debug.WriteLine写入输出窗口(以显示VS中的输出窗口, 查看 | 输出 )请注意,这些写操作只会发生在定义DEBUG条件的构建中(默认情况下,调试版本定义这个,发布版本不)

  • 如果您希望能够在非调试版本中写入可配置的“侦听器”,则可以使用System.Diagnostics.Trace.Writeline 。 (默认情况下,它会像Debug.Writeline一样写入Visual Studio中的输出窗口)


  • 添加一个Console.Read(); 在你的程序结束时。 它会阻止应用程序关闭,并且可以以这种方式查看其输出。

    这是一个我刚挖出来的控制台应用程序,它在处理后但在退出之前停止:

    class Program
    {
        static void Main(string[] args)
        {
            DummyObjectList dol = new DummyObjectList(2);
            dol.Add(new DummyObject("test1", (Decimal)25.36));
            dol.Add(new DummyObject("test2", (Decimal)0.698));
            XmlSerializer dolxs = new XmlSerializer(typeof(DummyObjectList));
            dolxs.Serialize(Console.Out, dol);
    
            Console.WriteLine(string.Empty);
            Console.WriteLine(string.Empty);
    
            List<DummyObject> dolist = new List<DummyObject>(2);
            dolist.Add(new DummyObject("test1", (Decimal)25.36));
            dolist.Add(new DummyObject("test2", (Decimal)0.698));
            XmlSerializer dolistxs = new XmlSerializer(typeof(List<DummyObject>));
            dolistxs.Serialize(Console.Out, dolist);
            Console.Read(); //  <--- Right here
        }
    }
    

    或者,您可以简单地在最后一行添加一个断点。

    链接地址: http://www.djcxy.com/p/86841.html

    上一篇: Seeing the console's output in Visual Studio 2010?

    下一篇: What's the use for "stdafx.h" in Visual Studio?