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

发布时间:2024-12-18 点击:39
系统运维
好久没有搞c 了,搞c 最烦就各种版本问题的报错。我对c 项目开发不是很熟悉,因为项目需要用vs2013修改一个c /mfc工程,一编译就报错无法打开包括文件:“winres.h”: no such file or directory.
上网查了一下,这个\\\’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

云服务器哪家最便宜
ecs云服务器目录共享
租用香港服务器要多大的带宽才够用?
云服务器怎么取消挂载磁盘
简述数据库设计的基本原则
公司购买阿里云服务器怎么支付
如何将电脑连接到投影仪_电脑连接投影仪的图文步骤
成品网站无法访问-虚拟主机/数据库问题