zoukankan      html  css  js  c++  java
  • VS2017 C++编译时出现 "the windows sdk version for 8.1 was not found"解决办法(亲测有效)

    最近安装了win7 64位旗舰版+Vistual Studio2017,发现编译程序的时候出现sdk的错误,网上的解决方法大同小异,但都不太好使,经过一番折腾,总算是完美解决。

    编译时VS2017报错如下所示:

    vs2017 error MSB8036: The Windows SDK version 8.1 was not found.

    原因及解决方案:

    出现这个sdk版本选择问题的主要原因是VS2017内默认使用的是Windows SDK 8.1,但实际上VS2017并不包含这个文件,执行编译时VS无法找到该文件,自然就会报错。

    这时候只需要下载一个最新版的sdk安装即可,由于sdk具有向下兼容性,一般win7/win8/win10出现该问题,都可以这么解决。

    1.首先,右键要编译的项目>>Properties>>Configuration Properties>>General,查看Windows SDK的版本号,发现是8.1,下拉菜单中没有其他版本号选项,这里因为是已经安装了,所以出现了新的版本号。

     

    确认之后,本人测试发现网上的方法,比如在项目右键选择 “重定SDK版本目标”,即可弹出新版本安装选项,我这个没有,只能自己下载安装。

    2.登陆windows sdk官方网址:https://developer.microsoft.com/zh-cn/windows/downloads/windows-10-sdk,下载Windows 10 SDK (10.0.16299.15),本人下载.exe文件直接双击即可,然后其他选项默认安装到C盘即可,安装时间可能会时长时短,我昨晚安装花费了2个小时没成功,今早只用了10分钟。

    (网上有人说必须安装到VS的安装路径下SDK文件夹内,自己亲测没有必要,默认安装即可,不影响使用。) 

    注意查看sdk的版本兼容性,上述下载的版本是最新的,完全适用win7系统,具体可以在上述网址内有详细介绍,如图所示:

    3.安装完成后,重新执行步骤1的查看方法,可以发现下拉菜单中出现了新的版本号10.0.16299.15,选择该版本号并点击下面的应用和确认,再次编译程序发现可以顺利通过了。

    问题解决。

  • 相关阅读:
    并发编程之线程进阶
    并发编程之线程
    进程间通信(队列和管道)
    在python程序中的进程操作
    操作系统之进程
    网络编程之黏包
    树莓派 websocket 控制LED
    lua 调用 C -- 实例 C函数作为应用程序的一部分
    linux 环境下进程什么时候会被 killed掉
    STM32 + cJSON 死机问题解决
  • 原文地址:https://www.cnblogs.com/xiachongkun/p/8757146.html
Copyright © 2011-2022 走看看