SDKDDKVer.h缺失,但安装了WinSDK?(c ++标题问题)

Ary*_*pai 9 c++ header visual-c++ visual-studio-2012

所以我最近使用.NET 4.5(Visual Studio 2012专业版)返回到VC++,因为在与web dev,python和c#一起度过了永恒之后,新PC上出现了各种不相关的原因.我对整个语言非常熟悉,它在语法方面非常漂亮,我喜欢内存管理的自由,指针和引用.我用"你好世界"的东西和BAM重新开始了!错误.

由于许多其他人都遇到了这个问题,我在尝试编译和运行时收到了IntelliSense错误:

cannot open source file "SDKDDKVer.h"" and the fatal error: "error C1083: Cannot open include file: 'SDKDDKVer.h': No such file or directory

我也安装了Visual Studio 2010(C#Express),也许这搞砸了我的一些东西.我已经确认我的包含和lib的VC++目录都是正确的,并且是Microsoft和几乎任何C++开发人员推荐的.我试图安装最新的WinSDK(8.1)来获取标题及其所有功能,但我大约110%确定它不在那里.我现在正在为Win7安装SDK,希望它可以驻留在那里(虽然它确实需要很长时间.)

我的电脑有终端蓝屏的问题,仅针对任何问题,只需将机器单独放置15分钟即可解决,所以可能是硬盘问题?

你们有人可以帮忙吗?绝对任何抬头,居高临下,明显与否都将受到赞赏,并且无论如何都要感谢阅读.

编辑:@MichaelBurr要求构建日志,我无法将其全部发布在底部,所以我想我会在这里添加它.

Build started 14/03/2014 00:34:11.
 1>Project "c:\Users\Brandon\documents\visual studio 2012\Projects\ConsoleApplication4\ConsoleApplication4\ConsoleApplication4.vcxproj" on node 2 (Build target(s)).
 1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppBuild.targets(344,5): warning MSB8003: Could not find WindowsSDKDir variable from the registry.  TargetFrameworkVersion or PlatformToolset may be set to an invalid version number.
 1>ClCompile:
     C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\CL.exe /c /ZI /nologo /W3 /WX- /sdl /Od /Oy- /D WIN32 /D _DEBUG /D _CONSOLE /D _UNICODE /D UNICODE /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Yc"stdafx.h" /Fp"Debug\ConsoleApplication4.pch" /Fo"Debug\\" /Fd"Debug\vc110.pdb" /Gd /TP /analyze- /errorReport:prompt stdafx.cpp
     stdafx.cpp
 1>c:\users\brandon\documents\visual studio 2012\projects\consoleapplication4\consoleapplication4\targetver.h(8): fatal error C1083: Cannot open include file: 'SDKDDKVer.h': No such file or directory
 1>Done Building Project "c:\Users\Brandon\documents\visual studio 2012\Projects\ConsoleApplication4\ConsoleApplication4\ConsoleApplication4.vcxproj" (Build target(s)) -- FAILED.
Run Code Online (Sandbox Code Playgroud)

建立失败.

时间流逝00:00:00.12

Mus*_*mal 17

如果以上信息无法解决您的问题,我建议以下步骤来自我的VS2013经验:

  1. 选择项目属性>配置> VC++目录> 包含目录并添加:c:\ Program Files(x86)\ Microsoft SDKs\Windows\v7.1A\Include
  2. 选择项目属性>配置> VC++目录> 库目录并添加:c:\ Program Files(x86)\ Microsoft SDKs\Windows\v7.1A\Lib

在配置之后我遇到了关于rc.exe链接错误的问题.对于这个问题,还需要做一件事:

  1. C:\ Program Files(x86)\ Microsoft SDKs\Windows\v7.1A\Bin复制RC.exeRcDll.dll文件并将它们传递给C:\ Program Files(x86)\ Microsoft Visual Studio 12.0\VC\bin完成所有这些配置步骤后,您可以构建一个简单的"Hello World!" 例如,如果你运气好的话就跑.

  • 谢谢!这终于解决了这个问题!如果您进行以下微小调整,我认为可能会有点吓人:1.添加**$(WindowsSdkDir)\ Include**(包含目录)2.添加**$(WindowsSdkDir)\ Lib**(库目录)3.添加**$(WindowsSdkDir)\ Bin**(可执行目录) (2认同)

Joh*_*nCz 0

您发布的空白项目是否有同样的问题?\n我已尝试使用 Windows 7 32 位和 64 位以及 XP 32 位构建您的项目。\n所有构建都很好,找到 SDKDDKVer.h 没有问题。

\n\n

您的依赖项路径设置一定有问题。

\n\n

您可能已将 VS 设置从一个 VS 安装转移到另一台(可能是从 32 位到 64 位(或反之亦然)机器)?\n如果是这种情况,请记住您的路径可能包含错误的文件夹名称。 \n对于 32 位系统,所有应用程序都默认安装到 C:\\Program Files,而在 64 位计算机上,所有 32 位应用程序都安装到 Program Files (x86)。这是VS的一个案例。所有包含文件位于:

\n\n
    \n
  • C:\\ Program Files(x86)\\ Microsoft SDKs \\ Windows \\ v7.0A \\ Include - \原始VS安装
  • \n
  • C:\\Program Files (x86)\\Microsoft\nSDKs\\Windows\\v7.1A\\Include - 安装 7.1 VS SDK 后
  • \n
\n\n

如果您安装了其他 SDK 软件包,您可能还有另一个包含 SDKDDKVer.h 的文件夹:

\n\n
    \n
  • C:\\ Program Files (x86) \\ Windows Kits \\ 8.0 \\ Include \\共享
  • \n
  • C:\\ Program Files (x86) \\ Windows Kits \\ 8.1 \\ Include \\共享
  • \n
  • C:\\ Program Files \\ Microsoft SDKs \\ Windows \\ v6.0A \\ Include
  • \n
  • C:\\ Program Files \\ Microsoft SDKs \\ Windows \\ v7.0 \\ Include
  • \n
  • C:\\ Program Files \\ Microsoft SDKs \\ Windows \\ v7.1 \\ Include
  • \n
\n\n

在您的项目设置中,您应该具有以下包含路径:

\n\n
    \n
  • $(VCInstallDir)包括
  • \n
  • $(VCInstallDir)atlmfc\\include
  • \n
  • $(WindowsSDK_IncludePath)
  • \n
\n\n

注意使用的宏。它们应该从父\xe2\x80\x99s 默认设置继承。\n您可能通过编辑 Microsoft.Cpp.Win32.user.props 文件中保存的设置来覆盖属性管理器中的路径设置。

\n\n

如果您的项目是从早期版本的 VS 转换而来,则可能会发生这种情况。

\n