小编Ant*_*hez的帖子

Visual Studio 添加真正的“全局”默认包含路径

是否有一种简单的方法可以将路径全局添加到 Visual Studio 中的包含/库目录集(即对于机器上的所有用户)?

我正在寻找的是能够为所有项目(过去和未来)安全地将包含/库路径添加到 Visual Studio。这相当于 INCLUDE、LIB 和 LIBPATH 环境变量,它们似乎适用于命令行构建,但由于某些原因在通过 Visual Studio 构建时完全被忽略。它必须应用于机器上的所有用户。

不是在寻找更改特定于用户的 MSBuild 属性表Microsoft.Cpp.Win32.user.props,因为这只会为特定机器上的特定用户添加路径。虽然这似乎是完成“全局”设置的推荐方法,但它不能应用于我的用例:

我参与教授工程师课程的编程导论,每年大约有 1000 名学生。我们有一个计算机实验室供他们每周进行实验室测验,但是每次学生退出时,都会有意清除每个用户的任何设置/文档(因此我们不能依赖用户道具)。作为课程的一部分,他们需要使用自定义课程库与硬件单元交互(因此需要添加包含/lib 路径)。手动添加每个项目的路径超出了我们教学生的范围,而且会变得乏味,因为他们将在整个学期每周创建几个项目。

我们尝试过的:

  • 将所需的头文件/库安装到 Windows SDK 路径。
    这绝对不是理想的,每当 Windows SDK 更新到更新版本时就会中断
  • 将所需的头文件/库安装到 Visual Studio 的Auxiliary路径。
    通过检查默认的 VC++ 包含目录,VS2017 似乎C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\VS在其对头文件和库的搜索中包含了路径。根据docs,该文件夹应该用于并非真正属于编译过程的工具。这是我们目前所做的,但感觉不对,而且文件夹位置在过去的 Visual Studio 版本中发生了变化,因此将来可能会发生变化(因此我们在过去 5 年中一直坚持使用 VS2012)。每当我们在实验室中更新 Visual Studio 时,我们还必须重新安装该库。

我们可以尝试:

  • 将路径添加到工具集默认属性表。
    同样,在各种论坛中建议不要这样做,以支持使用用户道具(例如此处)。工作表本身警告不要修改它们,担心每当工具集更新时它们会被重置,如果在升级 VS 时安装了新的工具集,我们将不得不重新修改该工具集的默认工作表。
  • 创建具有所需设置的项目模板。
    我们可以创建一个模板,学生在通过新建项目向导创建新项目时应选择该模板。担心的是,如果学生使用错误的模板创建项目(这在如此规模的班级中经常会不可避免地发生),并且在没有适当环境设置的情况下开始他们的测验任务,那么处理提出的问题将是一场噩梦我们有限的员工。此外,模板是特定于 VS 版本的(并放置在特定于版本的文件夹中),因此每次更改 …

c++ header visual-studio include-path

8
推荐指数
1
解决办法
3879
查看次数

标签 统计

c++ ×1

header ×1

include-path ×1

visual-studio ×1