指定用于生成每个源文件校验和的加密哈希算法。
注释
/ZH 选项在 Visual Studio 2019 版本 16.4 及更高版本中可用。
语法
/ZH:MD5
/ZH:SHA1
/ZH:SHA_256
/ZH:MD5
/ZH:SHA1
/ZH:SHA_256
/ZH:SHA384
/ZH:SHA512
参数
/ZH:MD5
将 MD5 哈希用于校验和。 此选项是 Visual Studio 2019 中的默认选项。
/ZH:SHA1
将 SHA-1 哈希用于校验和。
/ZH:SHA_256
将 SHA-256 哈希用于校验和。 此选项是 Visual Studio 2022 版本 17.0 及更高版本中的默认选项。
/ZH:SHA384
对校验和使用 SHA-384 哈希。
/ZH:SHA512
对校验和使用 SHA-512 哈希。
备注
PDB 文件存储每个源文件的校验和(在相关联的可执行文件中编译为对象代码)。 校验和允许调试器验证其加载的源代码是否与可执行文件匹配。 编译器和调试器支持 MD5、SHA-1 和 SHA-256 哈希算法。
由于 MD5 和 SHA-1 中存在冲突问题的风险,请使用 /ZH:SHA_256 选项或更强。
PDB 文件存储每个源文件的校验和(在相关联的可执行文件中编译为对象代码)。 校验和允许调试器验证其加载的源代码是否与可执行文件匹配。 编译器和调试器支持 MD5、SHA-1、SHA-256、SHA-384 和 SHA-512 哈希算法。
由于 MD5 和 SHA-1 中存在冲突问题的风险,请使用 /ZH:SHA_256 该选项或更强的算法。 SHA-384 和 SHA-512 提供更强的校验和,但它们可以提高编译时间。
注释
/ZH:SHA384 IFC(模块接口)文件不支持和/ZH:SHA512选项。 如果使用其中一个选项编译模块,编译器将发出 致命错误 C1029。 编译 C++ 模块时,请使用 /ZH:SHA_256 或较小的哈希算法。
指定多个 /ZH 选项时,将使用最后一个选项。
在 Visual Studio 开发环境中设置此编译器选项
打开项目的“属性页”对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性。
将“配置”下拉列表设置为“所有配置”。 将“平台”下拉列表设置为“所有平台”。
选择“配置属性”“C/C++”>“命令行”属性页>。
- 修改“其他选项”属性以添加、
/ZH:MD5、/ZH:SHA1/ZH:SHA_256、/ZH:SHA384或/ZH:SHA512选项,然后选择“确定”。
- 修改“其他选项”属性以添加、
/ZH:MD5/ZH:SHA1或/ZH:SHA_256选项,然后选择“确定”。