我试图写一个消息到输出窗口调试的目的。我搜索了一个类似Java的system.out.println("")的函数。我尝试了调试。写,控制台。Write和Trace.Write。它不会给出错误,但也不会打印任何东西。
“定义调试常量”和“定义跟踪常量”选项被选中。
菜单工具→选项→调试→“将所有输出窗口文本重定向到立即窗口”选项未选中。
配置:活动(调试)
注意:如果相关的话,我用向导创建了一个“Windows窗体应用程序”项目。我不知道去哪里找。
我试图写一个消息到输出窗口调试的目的。我搜索了一个类似Java的system.out.println("")的函数。我尝试了调试。写,控制台。Write和Trace.Write。它不会给出错误,但也不会打印任何东西。
“定义调试常量”和“定义跟踪常量”选项被选中。
菜单工具→选项→调试→“将所有输出窗口文本重定向到立即窗口”选项未选中。
配置:活动(调试)
注意:如果相关的话,我用向导创建了一个“Windows窗体应用程序”项目。我不知道去哪里找。
当前回答
出于调试目的,System.Diagnostics.Debug.WriteLine()命令不会被编译到代码的发布版本中,除非您有调试侦听器。当在调试模式下运行时,它会写入所有跟踪侦听器,其中包括VS输出窗口。
对于控制台应用程序。Console.WriteLine()可以工作,但输出仍然会在二进制文件的发布版本中生成。
调试测试时,调试输出也应该出现在正常输出窗口中;然而,控制台。Writeline输出没有(但可以在测试输出窗口中找到)。
其他回答
这将写入调试输出窗口:
using System.Diagnostics;
Debug.WriteLine("Send to debug output.");
出于调试目的,System.Diagnostics.Debug.WriteLine()命令不会被编译到代码的发布版本中,除非您有调试侦听器。当在调试模式下运行时,它会写入所有跟踪侦听器,其中包括VS输出窗口。
对于控制台应用程序。Console.WriteLine()可以工作,但输出仍然会在二进制文件的发布版本中生成。
调试测试时,调试输出也应该出现在正常输出窗口中;然而,控制台。Writeline输出没有(但可以在测试输出窗口中找到)。
以下是我在Visual Studio 2015中的工作:
OutputDebugStringW(L"Write this to Output window in VS14.");
在这里阅读OutputDebugStringW的文档。
注意,此方法仅在调试代码时有效(调试模式)。
Debug.WriteLine
就是你要找的。
如果没有,试着这样做:
菜单工具→选项→调试→取消勾选即时输出。
Debug.Print("text here")
or
Console.WriteLine("text here")