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

 

更多关于云服务器域名注册虚拟主机的问题,请访问西部数码官网:www.west.cn

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » VS2013找不到winres.h的解决办法

登录

找回密码

注册