Jak naprawić błąd „Nie znaleziono zestawu Windows SDK w wersji 8.1”?

89

Niedawno zaktualizowałem program Visual Studio 2015 i teraz, kiedy próbuję zbudować dowolny projekt, zawsze kończy się to niepowodzeniem i pojawia się błąd

Kod ważności Opis Błąd stanu wstrzymania wiersza pliku projektu MSB8036 Nie znaleziono zestawu Windows SDK w wersji 8.1. Zainstaluj wymaganą wersję zestawu Windows SDK lub zmień wersję zestawu SDK na stronach właściwości projektu lub klikając prawym przyciskiem myszy rozwiązanie i wybierając opcję „Ponownie kieruj rozwiązanie”. Proj D: \ Program Files (x86) \ Visual studio 2017 \ Common7 \ IDE \ VC \ VCTargets \ Platforms \ Win32 \ PlatformToolsets \ v141 \ Toolset.targets 34

Przekierowałem rozwiązanie tak, jak zostało powiedziane, i problem nie ustąpił, mimo że retargetowanie zostało zakończone.Z tego powodu zdecydowałem się zainstalować Visual Studio 2017 i, no i zobacz, zrobiłem dokładnie to samo. 7.

Na czym polega problem i jak go naprawić?

nikt
źródło
Uruchom ponownie instalację i sprawdź, czy wybrano określony zestaw SDK. To może nie być domyślne. Jeśli jest już wybrana, spróbuj zamiast tego opcji Napraw.
Bo Persson
próbowałem naprawić i niestety nie zadziałało, również w instalacji nie mam żadnych opcji dla sdk
nikt

Odpowiedzi:

128

Ja też stanąłem przed tym problemem. Ponownie uruchom instalator programu Visual Studio 2017 , przejdź do sekcji „Poszczególne składniki” i wybierz Windows 8.1 SDK. Wróć do projektu> kliknij prawym przyciskiem myszy i ponownie wyceluj, aby dopasować wymagany zestaw SDK, jak pokazano poniżej:wprowadź opis obrazu tutaj

Felix Too
źródło
1
Dobrze. Musisz zainstalować 8.1 SDK, zanim będzie można go zmienić.
BSalita,
4
Sdk8.1 jest zawarty w vs2017. Wybrałem go z instalatora vs2017, ale nadal otrzymuję ten sam błąd. Retargeting odbywa się bez błędów. Co wydaje się być nie tak?
Maverick
Na podstawie twojego zrzutu ekranu masz już zainstalowaną wersję zestawu Windows 10 SDK. Ten zestaw SDK obsługuje system Windows 7 z dodatkiem SP1 i nowszym, więc jeśli nie masz konkretnej potrzeby posiadania zestawu SDK 8.1, prawdopodobnie powinieneś po prostu trzymać się tego, co masz.
mwfearnley
20

Zainstalowałem wersję 8.1 SDK:

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

Podczas instalacji zużywał 1 GB (trochę więcej).


Aktualizacja 9 października. Wystąpił błąd https: łącze sdksetup to https://go.microsoft.com/fwlink/p/?LinkId=323507

Powinno pomóc polecenie „Zapisz link jako”.

estellezg
źródło
5
to jest poprawna odpowiedź dla użytkowników VS 2019, ponieważ Windows 8.1 SDK nie istnieje już w porównaniu z instalatorem
Perfect28
1
@AAEM dziwnie nie pobierał się dla mnie na Chome, ale działał w Firefoksie
CAJE
Wystąpił błąd https. Adres URL sdksetup to go.microsoft.com/fwlink/p/?LinkId=323507
estellezg
6

Innym sposobem (działającym w 2015 r.) Jest otwarcie „Zainstaluj / usuń programy” (aplikacje i funkcje), znajdź Visual Studio, wybierz Modyfikuj. W otwartym oknie naciśnij Modyfikuj, zaznacz

  • 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])

i zainstaluj. Następnie kliknij prawym przyciskiem myszy rozwiązanie -> Zmień cel i będzie się kompilować

Pavel
źródło
4

Miałem win10 SDK i musiałem tylko wykonać retarget, a potem przestałem otrzymywać ten błąd. Pomysł polegał na tym, że projekt musi uaktualnić docelowy zestaw Windows SDK.

Michael Bahig
źródło
3

Zdaję sobie sprawę, że ten post ma kilka lat, ale chciałem tylko rozszerzyć go na każdego, kto wciąż boryka się z tym problemem.

Firma, w której pracuję, nadal korzysta z VS2015, więc z kolei nadal używam VS2015. Niedawno zacząłem pracować nad aplikacją RPC przy użyciu C ++ i stwierdziłem, że trzeba pobrać szablony Win32. Podobnie jak wiele innych miałem problem „Nie znaleziono zestawu SDK 8.1”. Podjąłem następujące działania naprawcze bez powodzenia.

  • Znalazłem SDK przez Micrsoft pod następującym linkiem https://developer.microsoft.com/en-us/windows/downloads/sdk-archive/, jak wspomniano powyżej, i pobrałem go.
  • Zlokalizowałem instalację VS2015 w aplikacjach i funkcjach i przeprowadziłem naprawę.
  • Całkowicie odinstalowałem VS2015 i ponownie go zainstalowałem.
  • Próbowałem ręcznie wskazać katalogi „Executable” i „Include” mojej aplikacji konsoli do katalogów C: \ Program Files (x86) \ Microsoft SDKs \ Windows Kits \ 8.1 and C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v8 .1A \ bin \ NETFX 4.5.1 Narzędzia.

Żadna z powyższych prób nie rozwiązała problemu ...

Następnie znalazłem ten artykuł w społecznościowej MSDN https://social.msdn.microsoft.com/Forums/office/en-US/5287c51b-46d0-4a79-baad-ddde36af4885/visual-studio-cant-find-windows-81- sdk-when-try-to-build-vs2015? forum = visualstudiogeneral

Ostatecznie to, co dla mnie rozwiązało, to:

  • Odinstalowanie i ponowna instalacja VS2015.
  • Lokalizowanie zainstalowanego pakietu „Windows Software Development Kit dla systemu Windows 8.1” i uruchamianie naprawy.
  • Sprawdziłem mój „C: \ Program Files (x86) \ Microsoft SDKs \ Windows Kits \ 8.1”, aby sprawdzić, czy folder „DesignTime” faktycznie tam jest.
  • Opened VS utworzył aplikację konsoli Win32 i skompilował ją bez błędów i problemów

Mam nadzieję, że pozwoli to nikomu zaoszczędzić prawie 3 pełne dni frustracji i utraty produktywności.

Reese Jones
źródło
1
  • Zainstaluj wymaganą wersję zestawu Windows SDK lub zmień wersję zestawu SDK na stronach właściwości projektu

    lub

  • klikając rozwiązanie prawym przyciskiem myszy i wybierając opcję „Przekieruj rozwiązanie”

Jeśli skorzystasz z przewodnika po Visual Studio, rozwiążesz problem.

yyater97
źródło
0

Napotkałem ten problem podczas próby zbudowania projektu npm. Nie udało się zainstalować pakietu node-sass i to był błąd, który drukował. Rozwiązałem to, ustawiając poprawnie mój serwer proxy npm, aby i

pooshla
źródło
-1

Grep *.vcxprojpliki drzewa folderów. Wymień <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>się <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>lub niezależnie od wersji SDK można uzyskać podczas aktualizacji jednego z projektów.

Facet z CAD
źródło
1
Jeśli zamierzasz zagłosować przeciw, powiedz przynajmniej dlaczego - to zadziałało na moim komputerze.
Facet z CAD