*.vcxproj 文件中的关键字标记是什么意思?

What does the Keyword tag mean in a *.vcxproj file?

我在许多 *.vcxproj 文件中看到以下内容

<PropertyGroup Label="Globals">
  <ProjectGuid>{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}</ProjectGuid>
  <Keyword>Win32Proj</Keyword>
  <RootNamespace>yadayada</RootNamespace>
</PropertyGroup>

<Keyword>Win32Proj</Keyword> 段是什么意思?它会影响构建期间的任何行为吗?

一般来说,我在哪里可以找到有关项目文件中标签的文档?

<Keyword>Win32Proj</Keyword> 告诉 Visual Studio 您将使用哪个 Windows-specific 依赖项。

这取决于创建时选择的项目类型。

对于已经存在的项目,您可以在项目属性 --> 常规中查看此设置。

现在,回答你的问题。

Does it affect any behavior during the build?

Win32Proj 表示 AdditionalIncludeDirectories 将包含 WinAPI 库的路径。如果它是 MFCProj,那么除了 到 WinAPI 之外,MFC headers 的路径也会在那里 。例如,参见 in this project file

至于文档,请尝试检查 this article from MSDN blog, it explains the meaning of some of the tags. And here 是使用项目属性的指南。 请注意,这些属性应该从 UI 中查看和编辑,因此真正的 *.vcxproj 文件的结构可能对您来说不太友好或 human-readable.