VS2013找不到winres.h的解决办法

好久没有搞C++了,搞C++最烦就各种版本问题的报错。我对C++项目开发不是很熟悉,因为项目需要用VS2013修改一个C++/MFC工程,一编译就报错无法打开包括文件:“winres.h”: No such file or directory.

上网查了一下,这个‘winres.h‘是Windows SDK的一个头文件,打开C盘找一下,果然在Windows SDK目录C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include下面。

如果我猜测没错,那么原因应该很简单了,就是这个项目工程没有引用到Windows SDK。

打开C:\Users\Administrator\AppData\Local\Microsoft\MSBuild\v4.0\下的Microsoft.Cpp.Win32.user.props可以配置VC项目默认的Include和Lib文件,打开来一看,里面明明有$(WindowsSdkDir)include,就是说VS2013默认是有配置Windows SDK路径的,为什么还是找不到这个winres.h呢。

打开注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MicrosoftSDKs\Windows\CurrentVersion and CurrentInstallFolder看一下

默认的环境变量WindowsSdkDir是指向Windows Sdk的目录没错啊,怎么回事呢?再上网查一下终于明白怎么回事了,C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A下的SDK是老版本的Windows SDK,最新的Windows SDK被我安装在C:\Program Files (x86)\Windows Kits\8.0\Include下,而且VS2013默认使用的环境变量$(WindowsSDK_IncludePath),该环境变量包含了最新Windows SDK的下个的3个头文件目录:

C:\Program Files (x86)\Windows Kits\8.0\Include\um

C:\Program Files (x86)\Windows Kits\8.0\Include\shared

C:\Program Files (x86)\Windows Kits\8.0\Include\winrt

另外$(WindowsSDK_LibraryPath_x86)指向了新版SDK的Lib文件目录.

最后的解决办法应该是老版本$(WindowsSdkDir)目录应该被抛弃,新版环境变量调换掉老的环境变量。打开C:\Users\Administrator\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props,修改方法如下图:

红圈部分的$(WindowsSdkDir)include和$(WindowsSdkDir)lib删掉,新增$(WindowsSDK_IncludePath)和$(WindowsSDK_LibraryPath_x86)。

VC++开发有关新环境变量:

1. VC_LibraryPath_x64 = D:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64;D:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\lib\amd64

2. VC_LibraryPath_x86 = D:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib;D:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\lib

3. WindowsSDK_IncludePath = C:\Program Files (x86)\Windows Kits\8.1\Include\shared;C:\Program Files (x86)\Windows Kits\8.1\Include\um;C:\Program Files (x86)\Windows Kits\8.1\Include\winrt

4. WindowsSDK_LibraryPath_x64 = C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x64

5. WindowsSDK_LibraryPath_x86 = C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x86

时间: 2024-10-19 13:17:39

VS2013找不到winres.h的解决办法的相关文章

生成JNI的DLL时提示找不到jni.h的解决办法Cannot open include file: 'jni.h': No such file or directory

解决办法: 就是到jdk的安装目录下include下把以下相应的文件,复制到vc目录下的include文件夹下 \jdk\include\jni.h \jdk\include\win32\jawt_md.h \jdk\include\win32\jni_md.h 上面主是jdk安装目录下的三个文件,分别复制它们到vc目录下的include文件夹下.如我的安装位置是: D:\Program Files\Microsoft Visual Studio\VC98\Include 你们可以根据自己的安装

编译找不到zlib.h的解决办法

编译找不到zlib.h 需要安装zlib-devel sudo apt-get install ruby sudo apt-get install zlib1g-dev 重新编译即可

maven 工程启动找不到 Spring ContextLoaderListener 的解决办法

用maven 工程搭建项目,在搭建好之后,运行时却抛出了这样的错误:  Error configuring application listener of class org.springframework.web.context.ContextLoaderListener  java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener, 这说明根本没有找到我们在 web.xml 里

linux中无 conio.h的解决办法

conio.h不是C标准库中的头文件,在ISO和POSIX标准中均没有定义.conio是Console Input/Output(控制台输入输出)的简写,其中定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作,比如getch()函数等等.大部分DOS,Windows,Phar Lap,DOSX,OS/2等平台上的C编译器提供此文件,UNIX和Linux平台的C编译器本身通常不包含此头文件,但已经有其兼容包,可参考: http://conio.sourceforg

Xcode编译WebApps找不到js的错误解决办法<转>

使用Xcode做WebApps时,使用UIWebview来调用一个页面,有时会遇到问题,其一就是编译的时候出现黄色感叹号的Warning,js文件都报错:warning: no rule to process file '$(PROJECT_DIR)/jquery-1.8.1.min.js' of type sourcecode.javascript for architecture i386 错误原因是:js和html等资源文件加入到project的时候,Xcode错误的将js文件都放到了编译

android ndk出现Unresolved inclusion: <jni.h> 的解决办法

在ndk中对项目点击Add Native Support之后,自动生成的cpp文件有时候会出现 Unresolved inclusion: <jni.h>的提示,此时只需要点击一下工具栏中的"锤子"按钮即可 android ndk出现Unresolved inclusion: <jni.h> 的解决办法,码迷,mamicode.com

android NDK开发编译C++文件出现Type &#39;jint&#39; could not be resolved和Unresolved inclusion: &lt;jni.h&gt;的解决办法

今天在编译android NDK工程的时候,在jni文件夹下的cpp文件中报了一大堆错误,诸如:Unresolved inclusion: <jni.h>.Type 'jint' could not be resolved.Type 'jintArray' could not be resolved等,根据经验,这样的错误肯定是没有包含相应的头文件导致的. 解决方案: 选中工程,右键->Properties,点击C/C++ General展开,点击Path and Symbols,在右边

找不到android-support包的解决办法

有时候在开发过程中,总是会遇到一些莫名奇妙的错误,或者在使用fragement和viewpage的时候,就会出现下面这个错误,如果出现找不到android-support-v4 包的时候,可以使用下面的方法进行添加: Project->properties->Java Build Path->Libraries->Add External Jars中加入sdk目录下的extras/android/support/v4/android-support-v4.jar (如果找不到,则需

Android Studio 找不到夜神模拟器的解决办法

Android Studio 找不到夜神模拟器的解决办法 1.启动夜神模拟器 2.找到你电脑上的夜神安装目录,在bin目录下打开cmd窗口,运行命令 nox_adb.exe connect 127.0.0.1:62001 当然你可以将夜神安装的bin目录配置到电脑的系统环境变量中,以后就省的找寻这个目录了 3.发现设备,可以开始安装调试 原文地址:https://www.cnblogs.com/dlm17/p/12346719.html