写入Visual Studio的输出窗口
我正在尝试将一条消息写入输出窗口以进行调试。 我搜索了像Java的system.out.println("")
这样的函数。 我试过Debug.Write
, Console.Write
和Trace.Write
。 它不会出错,但也不会打印任何内容。
选中“定义DEBUG常量”和“定义TRACE常量”选项。
菜单工具 → 选项 → 调试 → “将所有输出窗口文本重定向到立即窗口”选项未选中。
配置:活动(调试)
注意:如果相关,我创建了一个项目,向导为“Windows窗体应用程序”。 我不知道在哪里看。
#1楼
使用:
System.Diagnostics.Debug.WriteLine("your message here");
#2楼
对我来说,只有Trace命名空间而不是Debug工作:
System.Diagnostics.Trace.WriteLine("message");
我在Visual Studio 2010下的C#项目中工作。
#3楼
打印到Visual Studio的输出窗口:
Debug.Writeline();
#4楼
电话
System.Diagnostics.Debug.WriteLine("message");
使用.NET Core (V 1.0或1.1)时失败。
我们应该创建并使用来自Microsoft.Extensions.Logging
的记录器,但该日志仅出现在dotnet.exe弹出控制台窗口中,而不是出现在Visual Studio的“输出”窗口中。
#5楼
以下在Visual Studio 2015中为我工作:
OutputDebugStringW(L"Write this to Output window in VS14.");
在这里阅读OutputDebugStringW的文档。
请注意,此方法仅在您调试代码时有效(
debug mode
)
#6楼
这不是原始问题的答案。 但是,当我在寻找交互式转储对象数据的方法时发现了这个问题,我认为其他人可能会从提到这个非常有用的替代方案中受益。
我最终使用了命令窗口并输入了Debug.Print
命令,如下所示。 这打印了一个可以作为文本复制的格式的内存对象,这是我真正需要的。
> Debug.Print <item>id: 1idt: nulligad: 99igbd: 99gl_desc: "New #20"te_num: "1-001-001-020"
#7楼
这需要一个第三方框架,即Serilog ,但我发现这是一个非常流畅的体验,可以将输出输出到我能看到的地方。
您首先需要安装Serilog的Trace接收器 。 安装后,您需要像这样设置记录器:
Logger = new LoggerConfiguration().MinimumLevel.Verbose().WriteTo.Trace().CreateLogger();
(您可以设置不同的最低级别或将其设置为配置值或任何正常的Serilog功能。您还可以将Trace
记录器设置为特定级别以覆盖配置,或者您想要执行此操作。)
然后,您只需正常记录消息,它们就会显示在“输出”窗口中:
Logger.Information("Did stuff!");
这似乎不是什么大问题,所以让我解释一些额外的优点。 对我来说最大的一点是我可以同时登录输出窗口和控制台 :
Logger = new LoggerConfiguration().MinimumLevel.Verbose().WriteTo.Trace().WriteTo.Console(standardErrorFromLevel: LogEventLevel.Error).CreateLogger();
这使我在如何消耗输出方面具有很大的灵活性,而无需使用Debug.Write
复制我对Console.Write
所有调用。 在编写代码时,我可以在Visual Studio中运行我的命令行工具,而不必担心退出时会丢失输出。 当我部署它并需要调试某些东西(并且没有Visual Studio可用)时,控制台输出随时可用于我的消费。 当它作为计划任务运行时,也可以将相同的消息记录到文件(或任何其他类型的接收器)。
最重要的是,使用Serilog这样做可以很容易地将消息转储到多个目的地,确保无论我如何运行它,我总能随时访问输出。
它还需要非常少的设置和代码。
#8楼
出于调试目的,除非您具有调试侦听器,否则不会将System.Diagnostics.Debug.Writeline()
命令编译到代码的发行版中。 它会在调试模式下运行时写入包含VS输出窗口的所有跟踪侦听器。
对于控制台应用程序。 Console.Writeline()
可以工作但输出仍然会在二进制文件的发行版中生成。
调试测试时,调试输出也应出现在正常输出窗口中; 而,console.writeline输出没有(但可以在测试输出窗口中找到。)
#9楼
Debug.WriteLine
是你在找什么。
如果没有,请尝试这样做:
菜单工具 → 选项 → 调试 →取消选中将输出发送到立即 。
#10楼
添加System.Diagnostics
命名空间,然后您可以使用Debug.WriteLine()
快速将消息打印到IDE的输出窗口。 有关详细信息,请参阅以下内容:
- 如何在Visual C#中跟踪和调试
- 关于使用Debug和Trace类的讨论,包括异常处理
#11楼
你可能正在寻找
MessageBox.Show()
要么
Debug.Writeline()
#12楼
这将写入调试输出窗口:
using System.Diagnostics;Debug.WriteLine("Send to debug output.");
写入Visual Studio的输出窗口相关推荐
- Visual Studio C++ 输出调试信息在调试-输出窗口
#include<stdio.h> static char LOGBUFFER[10240]; #define dlog(fmt,...) sprintf_s(LOGBUFFER, siz ...
- 谈谈Visual Studio的缺点,比较Eclipse
诚然Visual Studio是一个非常强大的开发环境,但是使用久了以后,觉得在细节方面还是有很多地方比不过Eclipse.比如: 1. 界面设计没有充分考虑空间占用 Visual Studio的工具 ...
- cmake 检查文件更新_2020年6月:Visual Studio对Linux开发平台的更新
三项更新 通过使用Visual Studio 2019,你可以在一台远程Linux系统或者WSL(Windows Subsystem for Linux)上进行编译和调试C++工程,另外,你还可以使用 ...
- Visual Studio 即时窗口实用技巧
在 Visual Studio 中有一个窗口叫 Immediate 窗口,中文版本应该叫即时窗口.默认会在你启动调试时在 VS 编辑器中弹出来.你也可以通过 Debug|Windows|Immedia ...
- visual studio 编辑器窗口分屏
今天发现了 visual studio 的编辑器窗口还可以玩分屏,也就是开两个编辑器,这样开发起来效率更高,特地记录一下. 效果入下: 发现其他提高开发效率的方法后再来更新. 更多有关提高 visua ...
- mysql2005编辑器用法,文本编辑器 - Visual Studio的隐藏功能(2005-2010)?
文本编辑器 - Visual Studio的隐藏功能(2005-2010)? Visual Studio是如此庞大的产品,即使经过多年的努力,我偶尔偶然发现了一种新的/更好的方式来做我甚至不知道的事情 ...
- 收藏!推荐12个超实用的Visual Studio插件
工欲善其事,必先利其器,整理的一些我必装的12款Visual Studio插件,希望你们能get到. 效率工具前文传送门: 推荐:程序员必装的10款谷歌插件 程序员必备的8个学习工具 99%的人不知道 ...
- visual-studio – 使用TFS 2010防止在Visual Studio 2012上签入pdb文件
我们最近从Visual Studio 2010迁移到Visual Studio 2012.我们仍在使用TFS 2010,我们使用gated check-ins. 由于我们开始使用Visual Stud ...
- 12款好用的Visual Studio插件,最后一款良心推荐
工欲善其事,必先利其器,整理的一些我必装的12款Visual Studio插件,希望你们能get到. 效率工具前文传送门: adb常用命令总结 程序员你可以考虑安装的15款谷歌插件 推荐20套实战源码 ...
最新文章
- 香槟分校计算机科学排名,伊利诺伊大学厄巴纳-香槟分校计算机科学与工程世界排名2020年最新排名第42(ARWU世界排名)...
- 简单聊聊模型的性能评估标准
- 英伟达代码签名证书遭窃取?三星也未能幸免,泄露多达190GB文件
- 瑞典正成为欧洲硅谷?
- Bailian4143 和为给定数【排序+二分】
- iOS APP 逆向安全杂谈之三
- PDF解密去水印工具
- 工作一年时期的土豆总结——复杂度和困难度
- excel 多行 取消隐藏_如何在Excel 2013中隐藏和取消隐藏行和列
- 商务网站建设与维护【16】
- 计算机文件只读模式,电脑文件只读模式如何修改 – 手机爱问
- Linux ssh 文件 authorized_keys 和 known_hosts
- 预编译器错误:代码使用了less语言,但未安装相应的编译器插件,请前往插件市场安装该插件
- python 高级部分
- 12自由度六足机器人实现步态规划功能
- python爬虫知乎点赞_Python爬虫爬取知乎小结
- 清明节主题PPT模板
- 写不完的数学试卷-----试卷生成器(Qt含源码)
- 软件安全测试之SQL注入
- python证书微软认证费用_微软认证有哪些?费用多少?