将 SARIF 诊断输出到指定的文件或目录。 有关详细信息,请参阅结构化 SARIF 诊断。
语法
/experimental:log
文件名
/experimental:log
directoryname\
参数
文件名
SARIF 诊断的输出文件。 编译器会自动将 .sarif
扩展名添加到 文件名。
/experimental:log
和文件名之间的空格是可选的。 对包含空格的路径使用双引号。 支持相对路径和绝对路径。
directoryname\
SARIF 诊断的输出目录(例如, /experimental:log sarif_output\
)。 请记住添加尾部反斜杠 (\
) 以指示它是目录。 每个源文件名称构成了保存在目录中的每个 SARIF 文件的基名称。 编译器会自动将 .sarif
扩展名添加到每个文件名。 和 /experimental:log
之间的空间是可选的。 对包含空格的路径使用双引号。 支持相对路径和绝对路径。
注解
此选项自 Visual Studio 2022 版本 17.8 起可用。
诊断结果也会像往常一样作为文本输出到控制台。
在 Visual Studio 开发环境中设置此编译器选项
- 打开项目的“属性页” 对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性。
- 选择要为其更改属性的特定项目配置和平台。 还可以选择“所有配置”和“所有平台”。
- 选择“配置属性”“C/C++”>“命令行”属性页>。
- 修改“附加选项”属性,然后选择“确定”。
例子
以下命令生成用于编译 main.cpp
并将其保存在文件中 mySarifInfo.sarif
的 SARIF 信息:
cl /experimental:log mySarifInfo main.cpp
以下命令生成整个编译的 SARIF 信息,并将其sarif_output
保存在文件中main.sarif
的目录中:other.sarif
cl /experimental:log sarif_output\ main.cpp other.cpp