Как исправить ошибку «Windows SDK версии 8.1» не найден?


89

Я недавно обновил Visual Studio 2015, и теперь, когда я пытаюсь создать любой проект, он всегда терпит неудачу, и я получаю сообщение об ошибке

Код серьезности Описание Ошибка состояния подавления строки файла проекта MSB8036 Не найден Windows SDK версии 8.1. Установите требуемую версию Windows SDK или измените версию SDK на страницах свойств проекта или щелкнув решение правой кнопкой мыши и выбрав «Перенацелить решение». Проект D: \ Program Files (x86) \ Visual Studio 2017 \ Common7 \ IDE \ VC \ VCTargets \ Platforms \ Win32 \ PlatformToolsets \ v141 \ Toolset.targets 34

Я перенацелил решение, как было сказано, и проблема осталась, даже если перенацеливание было завершено. Я решил установить Visual Studio 2017 из-за этого, и, о чудо, она сделала то же самое. Я также использую окна 7.

В чем проблема и как ее исправить?


Повторите установку и убедитесь, что выбран конкретный SDK. Это может быть не по умолчанию. Если это будет уже выбран, попробуйте вместо опции восстановления.
Bo Persson

Я попробовал отремонтировать, и он, к сожалению, не сработал. Кроме того, при установке у меня нет никаких опций для SDK
никто

Ответы:


128

Я тоже столкнулся с этой проблемой. Повторно запустите установщик Visual Studio 2017 , перейдите в «Отдельные компоненты» и выберите Windows 8.1 SDK. Вернитесь к проекту> щелкните правой кнопкой мыши и измените таргетинг в соответствии с требуемым SDK, как показано ниже:введите описание изображения здесь


1
Правильно. Вы должны установить 8.1 SDK, прежде чем сможете его изменить.
BSalita 05

4
Sdk8.1 включен в vs2017. Я выбрал его из установщика vs2017, но все равно получаю ту же ошибку. Ретаргетинг проходит без ошибок. Что, кажется, здесь не так?
Maverick

Судя по вашему снимку экрана, у вас уже установлена ​​версия Windows 10 SDK. Этот SDK поддерживает Windows 7 SP1 и более поздние версии, поэтому, если у вас нет особой потребности в SDK 8.1, вам, вероятно, следует просто придерживаться того, что у вас есть.
mwfearnley

20

Я установил версию 8.1 SDK:

https://developer.microsoft.com/en-us/windows/downloads/sdk-archive

При установке использовалось 1 ГБ (чуть больше).


Обновление от 9 октября. Ошибка https: ссылка sdksetup https://go.microsoft.com/fwlink/p/?LinkId=323507

«Сохранить ссылку как» должно помочь.


5
это правильный ответ для пользователей VS 2019, так как Windows 8.1 SDK больше не существует в установщике vs
Perfect28

1
Как ни странно, @AAEM не загрузился для меня на Chome, но работал в Firefox
CAJE

Ошибка https. URL-адрес для sdksetup: go.microsoft.com/fwlink/p/?LinkId=323507
estellezg

6

Другой способ (работавший в 2015 году) - открыть «Установить / удалить программы» («Приложения и функции»), найти Visual Studio, выбрать «Изменить». В открывшемся окне нажмите Modify, отметьте

  • Languages -> Visual C++ -> Common tools for Visual C++
  • Windows and web development -> Tools for universal windows apps -> Tools (1.4.1) and Windows 10 SDK ([version])
  • Windows and web development -> Tools for universal windows apps -> Windows 10 SDK ([version])

и установить. Затем щелкните правой кнопкой мыши решение -> Перенацелить, и оно скомпилируется


4

У меня был Win10 SDK, и мне нужно было только перенацелить, а затем я перестал получать эту ошибку. Идея заключалась в том, что проекту необходимо обновить целевой Windows SDK.


3

Я понимаю, что этому посту несколько лет, но я просто хотел распространить его на всех, кто все еще борется с этой проблемой.

Компания, в которой я работаю, по-прежнему использует VS2015, поэтому я, в свою очередь, все еще использую VS2015. Недавно я начал работать над приложением RPC с использованием C ++ и обнаружил необходимость загрузки шаблонов Win32. Как и у многих других, у меня была проблема «SDK 8.1 не найден». Я безуспешно предпринял следующие корректирующие действия.

  • Я нашел SDK через Micrsoft по следующей ссылке https://developer.microsoft.com/en-us/windows/downloads/sdk-archive/, как указано выше, и загрузил его.
  • Я нашел свою установку VS2015 в разделе «Приложения и функции» и выполнил ремонт.
  • Я полностью удалил свой VS2015 и переустановил его.
  • Я попытался вручную указать каталоги «Executable» и «Include» своего консольного приложения в C: \ Program Files (x86) \ Microsoft SDKs \ Windows Kits \ 8.1 и C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v8 .1A \ bin \ NETFX 4.5.1 Инструменты.

Ни одна из вышеперечисленных попыток не устранила проблему для меня ...

Затем я нашел эту статью в социальной сети MSDN https://social.msdn.microsoft.com/Forums/office/en-US/5287c51b-46d0-4a79-baad-ddde36af4885/visual-studio-cant-find-windows-81- sdk-при-попытке-построить-vs2015? forum = visualstudiogenral

Наконец, что решило проблему для меня:

  • Удаление и переустановка VS2015.
  • Найдите мой установленный «Комплект разработки программного обеспечения Windows для Windows 8.1» и запустите ремонт.
  • Проверил мой «C: \ Program Files (x86) \ Microsoft SDKs \ Windows Kits \ 8.1», чтобы убедиться, что папка «DesignTime» действительно существует.
  • Открытый VS создал консольное приложение Win32 и скомпилировал без ошибок или проблем

Я надеюсь, что это избавит кого-то еще от почти трех полных дней разочарований и потери производительности.


1
  • Установите необходимую версию Windows SDK или измените версию SDK на страницах свойств проекта.

    или

  • щелкнув решение правой кнопкой мыши и выбрав «Перенацелить решение»

Если вы сделаете визуальное руководство по студии, вы решите проблему.


0

Я столкнулся с этой проблемой при создании проекта npm. Не удалось установить пакет node-sass, и это была ошибка, которую он печатал. Я решил это, правильно установив прокси-сервер npm, чтобы я


-1

Grep *.vcxprojфайлы дерева папок. Замените <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>на <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>любую версию SDK, которую вы получите при обновлении одного из проектов.


1
Если вы собираетесь проголосовать против, по крайней мере, скажите, почему - это сработало на моей машине.
CAD-парень
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.