【问题标题】:Using Debug.WriteLine to write to Output window (VS2012)使用 Debug.WriteLine 写入输出窗口(VS2012)
【发布时间】:2014-07-25 15:53:41
【问题描述】:

我利用昨天的大部分时间阅读了 SO 和其他在线论坛上的所有相关帖子,以找到解决这个看似非常简单但让我抓狂的问题的解决方案。

由于某种原因,我似乎无法在我的 Visual Studio 2012 (Ultimate) 的输出窗口中打印任何内容。我尝试过的快速总结:

  • 将“解决方案配置”置于调试模式
  • 将“显示输出”置于调试模式
  • 右键单击输出窗口以打开一个对话框并确保选中“程序输出”。就我而言,我已经检查了所有内容
  • 工具 |选项 |调试 -> '将所有输出窗口文本重定向到即时窗口' 未选中
  • 工具 |导入和导出设置 -> 重置所有设置(以防我无意中调整了某些内容)

我已经尝试了以上所有方法,还有一些无济于事。我的意思是,我在使用大量广泛使用的 IDE 上花费了相当多的时间,但在输出窗口中简单地尝试打印某些内容时从未遇到过这么大的困难。

最后,它可能不会为这篇文章增加任何价值,但这是我愚蠢的简单代码:

using System;
using System.Diagnostics;

namespace DataProc.classes
{
    class Program
    {
        static void Main(string[] args)
        {
            Debug.WriteLine("I hate you, silly VS!!!");
        }
    }
}

编辑:(添加 web.config)

<configuration>
    <system.web>
        <compilation debug="true" targetFramework="4.5" />
        <httpRuntime targetFramework="4.5" />
    </system.web>
</configuration>

【问题讨论】:

  • 项目的构建属性下是否勾选了“定义跟踪常量”?
  • @yenta 是的,我同时检查了“跟踪常量”和“调试常量”
  • 这是一个 Web 应用程序还是一个控制台应用程序?你能在 Debug.WriteLine 上打断点吗?
  • 如果这是一个 Web 应用程序,正如 web.config 所暗示的那样,那么 Main 不是入口点。全局 asax 是启动类(或最接近它的东西)。如果这是控制台应用程序或 winforms 应用程序,则相关配置文件为 app.config。
  • 您可以尝试创建一个新的控制台应用程序来查看这是否是系统范围的吗?

标签: c# visual-studio-2012 visual-studio-debugging


【解决方案1】:

尝试将 VS2012 设置重置为默认值。 您可以从命令行执行此操作,如下所示:Reset VS2102 Settings

【讨论】:

  • 这与我在原始帖子中提到的使用 GUI 菜单重置它有什么不同? (第五弹)反正我试过命令行的方法,但没有运气。
  • 应该没有什么不同,但我最近的经验表明 devenv 在构建设置项目时在 GUI 模式和命令行之间的行为不同......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 2012-06-27
  • 2010-12-04
  • 1970-01-01
相关资源
最近更新 更多