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

可在**“属性页”对话框中更改 C 或 C++ 调试配置的项目设置,这在 如何:设置调试和发布配置 中进行了探讨。 下表显示“属性页”**对话框中与调试器有关的设置的位置。

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

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

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

设置

说明

要启动的调试器

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

  • 本地 Windows 调试器

  • 远程 Windows 调试器

  • Web 服务调试器

  • MPI 群集调试器

  • Web 浏览器调试器

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

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

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

“应用程序命令”(MPI 群集调试器)

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

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

“应用程序参数”(MPI 群集调试器)

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

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

< 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 调试器和 MPI 群集调试器)

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

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

“连接”(远程 Windows 调试器和 MPI 群集调试器)

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

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

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

注意 不带身份验证的远程调试可能会使远程计算机容易受到安全攻击。 Windows 身份验证模式更安全。

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

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

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

调试器类型

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

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

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

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

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

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

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

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

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

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

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

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

“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++ 项目

用于生成命令和属性的宏