C++ 调试配置的项目设置

可以更改 c.的项目设置或 Visual C++调试在 属性页 对话框的配置,如 如何:设置调试和发布配置所述。 下表显示**“属性页”**对话框中与调试器有关的设置的位置。

警告

配置属性/调试 类别的调试项目设置 Windows 的存储 app,并在 C++编写的组件是不同的。请参见 如何启动调试会话(Visual C++、visual C# 和 Visual Basic) 在 Windows 开发中心。

在**“要启动的调试器”**列表框中指定要使用的调试器。 您的选择将影响属性的可见性。

每当您保存解决方案时,每个调试属性设置均自动写入并保存到解决方案的“每用户”文件 (.vcxproj.user)。

“配置属性”文件夹(“调试”类别)

设置

描述

要启动的调试器

指定要运行的调试器,有以下选择:

  • 本地 Windows 调试器

  • 远程 Windows 调试器

  • Web 浏览器调试器

  • Web 服务调试器

“命令”(本地 Windows 调试器)

指定在本地计算机上用于启动要调试程序的命令。

“远程命令”(远程 Windows 调试器)

远程计算机上的 .exe 的路径。 可以像在远程计算机上一样输入路径。

“命令参数”(本地 Windows 调试器和远程 Windows 调试器)

  • 为前面指定的命令指定参数。

可以在此框中使用下列重定向运算符:

< file

从文件中读取 stdin。

> file

将 stdout 写入文件。

>> file

将 stdout 追加到文件。

2> file

将 stderr 写入文件。

2>> file

将 stderr 追加到文件。

2> &1

将 stderr (2) 输出发送到与 stdout (1) 相同的位置。

1> &2

将 stdout (1) 输出发送到与 stderr (2) 相同的位置。

大多数情况下,这些运算符仅适用于控制台应用程序。

工作目录

指定要调试的程序的工作目录(相对于 EXE 所在的项目目录)。 如果保留此设置为空白,则工作目录就是项目目录。 对于远程调试,项目目录将位于远程服务器上。

“附加”(本地 Windows 调试器和远程 Windows 调试器)

指定要启动应用程序还是附加到应用程序。 默认设置为“否”。

远程服务器名称 (Windows 远程调试器)

指定您要在上面调试应用程序的计算机(不是您的计算机)的名称,或指定 Msvsmon 服务器名称。 也可以从“进程”对话框中选择此计算机名称(请参见选择远程计算机)。 如果在此处指定计算机名称,则还必须在“连接”中指定连接类型。

RemoteMachine 生成宏被设置为此属性的值;有关更多信息,请参见用于生成命令和属性的宏

连接 (Windows 远程调试器)

允许您在远程调试的标准与非身份验证连接类型之间切换。 在“远程服务器名称”框中指定远程计算机的名称。 连接类型包括:

  • 带 Windows 身份验证的远程访问

  • 不带身份验证的远程访问(仅限本机)

无身份验证的附注 远程调试能使远程计算机容易受到安全违规。 Windows 身份验证模式更安全。

有关更多信息,请参见安装远程调试

HTTP URL(Web 服务调试器和 Web 浏览器调试器)

指定您要调试的项目所在的 URL。

调试器类型

指定要使用的调试器的类型: 仅限本机仅限托管仅 GPU混合自动 (默认值),或者 脚本

  • “仅限本机”适用于非托管 C++ 代码。

  • “仅限托管”适用于在公共语言运行时下运行的代码(托管代码)。

  • “混合”对托管代码和非托管代码都调用调试器。

  • “自动”将根据编译器和 EXE 信息确定调试器类型。

  • “脚本”调用脚本调试器。

  • 仅 GPU 是 C++在 GPU 计算机上运行或在 DirectX 请参考光栅器 AMP 代码。

“环境”(本地 Windows 调试器)

为您要调试的程序指定环境变量。 使用标准的环境变量语法(例如,PATH="%SystemRoot%\ … …")。 根据“合并环境”设置的不同,这些变量重写系统环境或与系统环境合并。 当在设置列单击时,出现“编辑…”字样 单击该链接编辑环境变量。

“合并环境”(本地 Windows 调试器)

确定在“环境”框中指定的变量是否与操作系统定义的环境合并。 默认设置为“是”。

“SQL 调试”(除 MPI 群集调试器外的所有调试器)

启用 Visual C++ 应用程序中的 SQL 过程的调试。 默认设置为“否”。

调试加速器类型 (只调试的 GPU)

指定 GPU 设备用于调试。 安装兼容 GPU 设备的设备驱动程序将添加其他选项。 默认设置为“GPU -软件仿真程序”。

GPU 默认断点行为 (只调试的 GPU)

指定是否应为 SIMD 经线的每个线程引发断点事件。 默认设置为断点引发事件一次只每个经线。

部署目录 (Windows 远程调试器)

在项目输出在生成之前要复制的远程计算机指定路径。 路径可以是远程计算机上的网络共享,也可以是路径到远程计算机上的文件夹。 默认设置为 null,这意味着项目输出不复制到网络共享。 若要启用文件的部署,还必须选择在配置管理器"对话框的 部署 复选框。 有关更多信息,请参见如何:创建和编辑配置

其他要部署的文件 (Windows 远程调试器)

如果部署目录属性设置为,这是分号分隔的列表其他文件复制到部署目录中。 默认设置为 null,这意味着,其他文件不复制到部署目录。 若要启用文件的部署,还必须选择在配置管理器"对话框的 部署 复选框。 有关更多信息,请参见如何:创建和编辑配置

部署 Visual C++ 调试运行库 (Windows 远程调试器)

如果部署目录设置属性,则指定 Visual C++是否调试当前平台上运行库应复制到网络共享。 默认设置是。

“C/C++”文件夹(“常规”类别)

设置

描述

调试信息格式 (/Z7、/Zd、/Zi、/ZI)

指定要为项目创建的调试信息类型。

默认选项 (/ZI) 以“编辑并继续”的兼容格式创建程序数据库 (PDB)。 有关更多信息,请参见 /Z7、/Zd、/Zi、/ZI(调试信息格式)

有关更多信息,请参见 PDB 文件DBG 文件

“C/C++”文件夹(“优化”类别)

设置

描述

优化

指定编译器是否应优化其生成的代码。 优化过程将更改执行的代码。 优化的代码不再与源代码匹配。 因此,调试将变得非常困难。

默认选项(“禁用 (/0d)”)取消优化。 您可以在开发时取消优化,并在创建代码的产品版本时再启用优化。

“链接器”文件夹(“调试”类别)

设置

描述

生成调试信息 (/DEBUG)

通知链接器收集调试信息,这些信息具有 /Z7、/Zd、/Zi 或 /ZI 指定的格式。

生成程序数据库文件 (/PDB:name)

在该框中指定 PDB 文件的名称。 必须为“调试信息格式”选择 /ZI 或 /Zi。

去除私有符号 (/PDBSTRIPPED:filename)

如果不希望在 PDB 文件中包含私有符号,则在该框中指定 PDB 文件的名称。 当使用任何生成 PDB 文件的编译器或链接器选项(如 /DEBUG、/Z7 和 /Zd)生成程序图像时,此选项创建第二个程序数据库 (PDB) 文件。 或/Zi。 这第二个 PDB 文件省略您不希望交付给用户的符号。 有关更多信息,请参见/PDBSTRIPPED(去除私有符号)

生成映射文件 (/MAP)

通知链接器在链接过程中生成映射文件。 默认设置为“否”。 有关更多信息,请参见/MAP(生成映射文件)

映射文件名(/MAP:name)

如果选择“生成映射文件”,则可在该框中指定映射文件。 有关更多信息,请参见/MAP(生成映射文件)

映射导出 (/MAPINFO:EXPORTS)

在映射文件中包含导出函数。 默认设置为“否”。 有关更多信息,请参见/MAPINFO(包含映射文件中的信息)

“可调试程序集”(/ASSEMBLYDEBUG)

为链接器 /ASSEMBLYDEBUG 选项指定设置。 可能值如下:

  • “未产生 Debuggable 特性”

  • “运行时跟踪和禁用优化 (/ASSEMBLYDEBUG)”。 这是默认设置。

  • “无运行时跟踪和启用优化 (/ASSEMBLYDEBUG:DISABLE)”

  • “<从父级或项目默认设置继承>”

  • 有关更多信息,请参见/ASSEMBLYDEBUG(添加 DebuggableAttribute)

通过使用 Microsoft.VisualStudio.VCProjectEngine.VCDebugSettings 接口,可以在“配置属性”文件夹(“调试”类别)中以编程方式更改这些设置。 有关更多信息,请参见VCDebugSettings

请参见

参考

/ASSEMBLYDEBUG(添加 DebuggableAttribute)

其他资源

调试本机代码

调试设置和准备

创建和管理 Visual C++ 项目

用于生成命令和属性的宏