Ant*_*hez 8 c++ header visual-studio include-path
是否有一种简单的方法可以将路径全局添加到 Visual Studio 中的包含/库目录集(即对于机器上的所有用户)?
我正在寻找的是能够为所有项目(过去和未来)安全地将包含/库路径添加到 Visual Studio。这相当于 INCLUDE、LIB 和 LIBPATH 环境变量,它们似乎适用于命令行构建,但由于某些原因在通过 Visual Studio 构建时完全被忽略。它必须应用于机器上的所有用户。
我不是在寻找更改特定于用户的 MSBuild 属性表Microsoft.Cpp.Win32.user.props,因为这只会为特定机器上的特定用户添加路径。虽然这似乎是完成“全局”设置的推荐方法,但它不能应用于我的用例:
我参与教授工程师课程的编程导论,每年大约有 1000 名学生。我们有一个计算机实验室供他们每周进行实验室测验,但是每次学生退出时,都会有意清除每个用户的任何设置/文档(因此我们不能依赖用户道具)。作为课程的一部分,他们需要使用自定义课程库与硬件单元交互(因此需要添加包含/lib 路径)。手动添加每个项目的路径超出了我们教学生的范围,而且会变得乏味,因为他们将在整个学期每周创建几个项目。
我们尝试过的:
Auxiliary路径。C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\VS在其对头文件和库的搜索中包含了路径。根据docs,该文件夹应该用于并非真正属于编译过程的工具。这是我们目前所做的,但感觉不对,而且文件夹位置在过去的 Visual Studio 版本中发生了变化,因此将来可能会发生变化(因此我们在过去 5 年中一直坚持使用 VS2012)。每当我们在实验室中更新 Visual Studio 时,我们还必须重新安装该库。我们可以尝试:
整个想法是让我们的工作流程面向未来。我们想要做的非常简单:将单个标头和单个库添加到默认搜索路径,并且它应该适用于安装在机器上的任何版本的 Visual Studio。在任何其他系统/IDE 上,这是一项微不足道的任务。命令行 MSBuild 甚至通过环境变量支持它。但是由于某种原因,我们找不到 Visual Studio 的简单解决方案。
有没有人有更好的主意?
创建一个“全局”属性表,其中包含您需要的所有必要更改,并将其添加到任何和所有新项目中。
对于我的示例,我创建了一个名为 的属性表core.props,并将其保存在解决方案目录中(但您可以将其保存在任何地方),并且在此文件中,我添加了包含和库名称/目录(以及其他设置,例如指定Visual Studio 使用实验性 C++ 语言功能;为输出文件指定精确的目录;更改调试设置等),每当我创建需要使用这些设置的项目时,我只需将该属性表附加到项目中。
Debug x64,但这取决于您)并为该文件夹“添加新项目属性表”您需要稍微尝试一下确切的设置,以确保它按照您期望的方式工作(您是否需要为库/包含/等指定相对路径或绝对路径?),但任何时候您创建一个新项目时,您只需设置一张工作表,您需要的所有设置都将导入到该项目中。如果您稍后需要进行更改,则只需修改该文件即可修改所有文件。