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

系统运维

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

创新互联建站长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为宁波企业提供专业的网站建设、做网站,宁波网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。

上网查了一下,这个\'winres.h\'是Windows SDK的一个头文件,打开C盘找一下,果然在Windows SDK目录C:\\ProgramFiles(x86)\\MicrosoftSDKs\\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

网页标题:VS2013找不到winres.h的解决办法
URL链接:https://www.cdcxhl.com/article28/cjdsjp.html

成都网站建设公司_创新互联,为您提供关键词优化电子商务网站建设外贸建站小程序开发网站导航

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

营销型网站建设