在 Visual Studio 中使用跟踪点将信息记录到“输出”窗口中

断点操作


添加断点右键选择操作

操作示例, 按照提示的格式写入需要打印的消息

结果查看

官方文档

https://docs.microsoft.com/zh-cn/visualstudio/debugger/using-tracepoints?view=vs-2019

有时候在输出窗口不方便查看时可以将输出重定向到文件项目属性/调试/应用程序参数> $(OutDir)/log.log

> 创建一个用于写入的空文件,如果文件名与已存在的文件相同,则会删除已有文件的内容,文件被视为一个新的空文件

>> 追加到一个文件,写操作向文件末尾追加数据,如果文件不存在,则创建文件

VS中的常用宏

  • $(IntDir) 为中间文件指定的相对于项目目录的目录路径。它解析为“中间目录”属性的值。
  • $(OutDir) 输出文件目录的路径,相对于项目目录。这解析为“输出目录”属性的值。
  • $(DevEnvDir) Visual Studio .NET 的安装目录(定义形式:驱动器 + 路径);包括尾部的反斜杠“\”。
  • (InputDir)+\”(ProjectDir)。
  • (InputPath)+++(ProjectPath)。
  • $(InputName)
  • $(RemoteMachine) 设置为“调试”属性页上“远程计算机”属性的值。有关更多信息,请参见更改用于 C/C++ 调试配置的项目设置。
  • $(References) 以分号分隔的引用列表被添加到项目中。
  • $(ConfigurationName) 当前项目配置的名称(例如“Debug”)。
  • $(PlatformName) 当前项目平台的名称(例如“Win32”)。
  • $(Inherit) 指定在由项目生成系统所撰写的命令行中,继承的属性出现的顺序。默认情况下,继承的属性出现在当前属性的末尾。
  • (NoInherit)使使(StopEvaluating)使(StopEvaluating)使(NoInherit)(Inherit)。
  • (StopEvaluating)(StopEvaluating)(StopEvaluating)(StopEvaluating)(Inherit)(Inherit)(StopEvaluating)(NoInherit) 的功能超集。
  • $(ParentName) 包含此项目项的项的名称。该名称将是父文件夹名称或项目名称。
  • (RootNameSpace)(ProjectName)。
  • (InputFileName)+(ProjectFileName)。
  • (InputExt).(ProjectExt)。
  • $(ProjectDir) 项目的目录(定义形式:驱动器 + 路径);包括尾部的反斜杠“\”。
  • $(ProjectPath) 项目的绝对路径名(定义形式:驱动器 + 路径 + 基本名称 + 文件扩展名)。
  • $(ProjectName) 项目的基本名称。
  • $(ProjectFileName) 项目的文件名(定义为基本名称 + 文件扩展名)。
  • $(ProjectExt) 项目的文件扩展名。它在文件扩展名的前面包括“.”。
  • $(SolutionDir) 解决方案的目录(定义形式:驱动器 + 路径);包括尾部的反斜杠“\”。
  • $(SolutionPath) 解决方案的绝对路径名(定义形式:驱动器 + 路径 + 基本名称 + 文件扩展名)。
  • $(SolutionName) 解决方案的基本名称。
  • $(SolutionFileName) 解决方案的文件名(定义为基本名称 + 文件扩展名)。
  • $(SolutionExt) 解决方案的文件扩展名。它在文件扩展名的前面包括“.”。
  • $(TargetDir) 生成的主输出文件的目录(定义形式:驱动器 + 路径);包括尾部的反斜杠“\”。
  • $(TargetPath) 生成的主输出文件的绝对路径名(定义形式:驱动器 + 路径 + 基本名称 + 文件扩展名)。
  • $(TargetName) 生成的主输出文件的基本名称。
  • $(TargetFileName) 生成的主输出文件的文件名(定义为基本名称 + 文件扩展名)。
  • $(TargetExt) 生成的主输出文件的文件扩展名。它在文件扩展名的前面包括“.”。
  • $(VSInstallDir) 安装 Visual Studio .NET 的目录。
  • $(VCInstallDir) 安装 Visual C++ .NET 的目录。
  • $(FrameworkDir) 安装 .NET Framework 的目录。
  • (FrameworkVersion)VisualStudio使.NETFramework(FrameworkDir) 相结合,就是 Visual Studio 使用的 .NET Framework 版本的完整路径。
  • $(FrameworkSDKDir) 安装 .NET Framework SDK 的目录。.NET Framework SDK 可作为 Visual Studio .NET 的一部分安装,也可单独安装。
  • $(WebDeployPath) 从 Web 部署根到项目输出所属于的位置的相对路径。返回与 RelativePath 相同的值。
  • $(WebDeployRoot) 指向 位置的绝对路径。例如,c:\inetpub\wwwroot。
  • $(SafeParentName) 有效名称格式的直接父级的名称。例如,窗体是 .resx 文件的父级。
  • $(SafeInputName) 作为有效类名的文件的名称,但不包括文件扩展名。
  • $(SafeRootNamespace) 项目向导将在其中添加代码的命名空间名称。此命名空间名称将只包含在有效的 C++ 标识符中允许的字符。
  • $(FxCopDir) fxcop.cmd 文件的路径。fxcop.cmd 文件不和所有的 Visual C++ 版本一起安装。
posted @   非法关键字  阅读(598)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
历史上的今天:
2017-11-16 创建线程消息循环服务于动态连接库
2017-11-16 关于Win32串口
点击右上角即可分享
微信分享提示