Visual Studio让我发疯,我怀疑自己做错了什么.
这就是我所做的:我很久以前安装了Visual Studio(Pro '08),我安装了Windows SDK(Win 7 x64),有人通过电子邮件发送给我一个项目,但无法构建.
总是,它找不到windows.h.虽然很容易C:\Program Files\Microsoft SDKs\Windows\v7.0\Include在每个项目的项目设置中包含,但我觉得这可能不是正确的方法.有没有办法以某种方式使Visual Studio全局知道这些文件?
我也尝试在path变量中包含上面的目录,但是没有改变任何东西.
此外,它将在同一目录中随机查找windows.h但不能找到winresrc.h.
编辑:
我的机器出了问题.不知何故,Visual Studio认为我的Windows SDK出错了.请参阅已接受的答案和修复评论.
是否有一种简单的方法可以将路径全局添加到 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 时,我们还必须重新安装该库。我们可以尝试:
我收到以下编译错误
致命错误C1189:#error:错误:使用C运行时库内部头文件.
我绝对不知道.任何人都可以对它有所了解吗?
完整的错误:
C:\ Program Files\Microsoft Visual Studio 8\VC\ce\include\crtdefs.h(100):致命错误C1189:#error:错误:使用C运行时库内部头文件.生成代码......
出于某种原因,我需要#include为我的系统使用绝对路径.
使用#include "D:\temp\temp_lib\temp.h"可以接受吗?
我尝试过这些不同的用法,这一切似乎都有效.
#include "D:\temp\temp_lib\temp.h"#include "D:\\temp\\temp_lib\\temp.h"#include "D:/temp/temp_lib/temp.h"我只是想知道我应该使用哪一个?我正在使用MSVC 2005.我想知道这三个是否仍然适用于Linux或其他环境.
我期待#1在编译期间出错,但我没有得到任何错误.任何人都知道为什么会这样?
在 C++ 和 Visual Studio 2017 中,
我将一些头文件复制到我的项目文件夹中,然后将它们添加到 C++ 中的“解决方案资源管理器”下。现在当我写
#include "name.h"
Run Code Online (Sandbox Code Playgroud)
它在包含下打印一个错误,并说“无法打开源文件”。
为什么,我可以做些什么来修复它?
我刚刚下载了 VS 并且是第一次学习 C++。