Zestaw Windows SDK

Zestaw Windows SDK (10.0.22000) dla systemu Windows 11 oferuje najnowsze nagłówki, biblioteki, metadane i narzędzia do tworzenia aplikacji dla systemu Windows. Ten zestaw SDK służy do tworzenia aplikacji platformy UWP (Universal Windows Platform) i interfejsu Win32 dla systemu Windows 11 oraz wcześniejszych wersji systemu Windows.

Rozpoczęcie

Zestaw SDK systemu Windows można uzyskać na dwa sposoby: zainstalować go z tej strony, wybierając link pobierania, lub wybrać pozycję „Zestaw SDK systemu Windows 11 (10.0.22000)” w składnikach opcjonalnych instalatora programu Visual Studio 2019.

Zanim rozpoczniesz instalację tego zestawu SDK:

  1. Przejrzyj wszystkie wymagania systemowe.
  2. Przed przystąpieniem do instalacji zamknij program Visual Studio.
  3. Zapoznaj się z informacjami o wersji i znanymi problemami.
POBIERZ INSTALATOR POBIERZ PLIK ISO Zaktualizowano: 2021-10-04

Wymagania systemowe

Ten zestaw Windows SDK ma następujące minimalne wymagania systemowe:

Obsługiwane systemy operacyjne

  • Opracowywanie aplikacji dla platformy UWP (Universal Windows Platform)
    • Windows 10 w wersji 1507 lub nowszej: Home, Professional, Education i Enterprise (wersje LTSB i S nie są obsługiwane)
    • Windows Server 2019, Windows Server 2016 i Windows Server 2012 R2 (tylko obsługa przez wiersz polecenia)
  • Opracowywanie aplikacji interfejsu Win32
    • Windows 10 wersja 1507 lub nowsza
    • Windows Server 2019, Windows Server 2016 i Windows Server 2012 R2 (tylko obsługa przez wiersz polecenia)
    • Windows 8.1
    • Windows 7 z dodatkiem SP1

(Nie wszystkie narzędzia są obsługiwane we wcześniejszych systemach operacyjnych)

Wymagania sprzętowe

  • Procesor: 1,6 GHz lub szybszy
  • 1 GB pamięci RAM
  • 4 GB wolnego miejsca na dysku twardym

Dodatkowe wymagania stawiane przez zestaw SDK

Proces instalacji w systemie Windows 8.1 i we wcześniejszych systemach operacyjnych wymaga aktualizacji KB2999226. Aby przeprowadzić instalację za pośrednictwem usługi Windows Update, upewnij się, że przed rozpoczęciem instalowania zestawu Windows SDK usługa Microsoft Update zainstalowała najnowsze zalecane aktualizacje i poprawki.

Co nowego

Zestaw Windows SDK dla systemu Windows 11 umożliwia zaktualizowanie aplikacji do najnowszej wersji systemu operacyjnego Windows. Dowiedz się więcej o nowych funkcjach w systemie Windows 11.

Aby zapoznać się z nowymi interfejsami API wprowadzonymi w systemie Windows 11, zobacz Nowe interfejsy API w systemie Windows 11 (kompilacja 22000).

Ponownie skompiluj pliki binarne systemu Windows 11 na platformie ARM przy użyciu architektury ARM64EC, aby wszelki kod systemowy ładowany przez aplikacje x64 działał z natywną szybkością. Wykorzystaj architekturę ARM64EC, aby stopniowo zmodyfikować swoją aplikację w celu działania z natywną szybkością na platformie ARM, nawet jeśli używasz zależności lub wtyczek, które jeszcze nie obsługują platformy ARM. Przeczytaj ogłoszenie.

Przykłady

Przykładowe aplikacje systemu Windows są teraz dostępne za pośrednictwem witryny GitHub. Można przeglądać kod w witrynie GitHub, sklonować osobistą kopię repozytorium za pomocą narzędzia Git lub pobrać archiwum wszystkich przykładów w formacie zip. Jesteśmy zainteresowani opiniami, więc w razie problemów lub pytań utwórz zgłoszenie problemu w repozytorium. Te przykłady są przeznaczone do uruchamiania na komputerach, urządzeniach przenośnych i przyszłych urządzeniach obsługujących platformę uniwersalną systemu Windows (UWP).

Poprzednie wersje zestawu SDK

Udostępnione wcześniej zestawy SDK i emulatory, w tym szczegółowe informacje o aktualizacjach, można znaleźć na stronie archiwum.

Uniwersalizacja aplikacji dla interfejsów API

Jeśli używasz nowych interfejsów API, rozważ napisanie aplikacji tak, aby była adaptacyjna i działała poprawnie na jak największej liczbie urządzeń z systemem Windows. W aplikacji adaptacyjnej nowe funkcje stają się dostępne, gdy urządzenie i wersja systemu Windows je obsługują. W przeciwnym razie można korzystać tylko z funkcji dostępnych w wykrytej wersji platformy. Aby uzyskać szczegółowe informacje dotyczące implementacji, zobacz artykuł na temat kodu adoptującego się do wersji.

Informacje o wersji i znane problemy

Zestaw Windows 10 SDK, wersja 2104

  • Usunięto bibliotekę api-ms-win-net-isolation-l1-1-0.lib. Aplikacje połączone z biblioteką api-ms-win-net-isolation-l1-1-0.lib mogą zamiast niej korzystać teraz z biblioteki OneCoreUAP.lib.
  • Usunięto bibliotekę irprops.lib. Aplikacje połączone z biblioteką irprops.lib mogą zamiast niej korzystać teraz z biblioteki bthprops.lib.
  • Przeniesiono element ENUM tagServerSelection z nagłówka wuapicommon.h do wuapi.h i usunięto ten pierwszy nagłówek. Jeśli chcesz użyć elementu ENUM tagServerSelection, dołącz nagłówek wuapi.h lub wuapi.idl.
  • Pakiet interfejsów API WinRT systemu Windows 10 umożliwia dodanie obsługi najnowszego interfejsu API środowiska wykonawczego systemu Windows do bibliotek i aplikacji platform .NET Framework 4.5+ i .NET Core 3.0+. Aby uzyskać dostęp do pakietu interfejsów API WinRT systemu Windows 10, zobacz Pakiet NuGet Microsoft.Windows.SDK.Contracts.
  • Rodzina funkcji printf jest teraz zgodna z regułami zaokrąglania IEEE 754 podczas drukowania dokładnie przedstawianych liczb zmiennoprzecinkowych i uwzględnia żądany tryb zaokrąglania określony w wywołaniu metody fesetround. Starsze działanie jest dostępne w przypadku połączenia z elementem legacy_stdio_float_rounding.obj.
  • Zestaw certyfikacji aplikacji systemu Windows. Dodano kilka nowych interfejsów API do listy obsługiwanych interfejsów API w zestawie certyfikacji aplikacji i Sklepie Windows. Jeśli interfejsy API, które znajdują się na liście obsługiwanych, są wyszarzone lub wyłączone w programie Visual Studio, można uzyskać do nich dostęp, wprowadzając niewielką zmianę w pliku źródłowym. Aby uzyskać szczegółowe informacje, zobacz ten znany problem. Znajdź więcej aktualizacji testów.
  • Aktualizacje kompilatora komunikatów (mc.exe):
    • Wykrywanie znacznika kolejności bajtów (BOM) w plikach mc. Jeśli plik mc zaczyna się od znacznika BOM UTF-8, zostanie odczytany jako plik z kodowaniem UTF-8. Jeśli zaczyna się od znacznika BOM UTF-16LE, zostanie odczytany jako plik z kodowaniem UTF-16LE. Jeśli wprowadzono parametr -u, plik zostanie odczytany jako plik z kodowaniem UTF-16LE. W przeciwnym razie zostanie odczytany przy użyciu bieżącej strony kodowej (CP_ACP).
    • Unikanie problemów z regułą jednej definicji (ODR) w generowanych przez kompilator wiadomości pomocnikach ETW języka C/C++ powodowanych przez konflikt makr konfiguracji (na przykład jeśli dwa pliki cpp z niezgodnymi definicjami elementu MCGEN_EVENTWRITETRANSFER są połączone z tym samym plikiem binarnym, generowane przez kompilator wiadomości pomocniki ETW będą przestrzegać definicji elementu MCGEN_EVENTWRITETRANSFER w poszczególnych plikach cpp zamiast arbitralnie wybierać jedną lub drugą).
  • Aktualizacje preprocesora śledzenia systemu Windows (tracewpp.exe):
    • Obsługa plików wejściowych (ini, tpl i kodu źródłowego) w formacie Unicode. Pliki wejściowe rozpoczynające się od znacznika kolejności bajtów (BOM) UTF-8 lub UTF-16 zostaną odczytane jako pliki z kodowaniem Unicode. Pliki wejściowe, które nie rozpoczynają się od znacznika BOM, zostaną odczytane przy użyciu bieżącej strony kodowej (CP_ACP). W celu zapewnienia zgodności z poprzednimi wersjami w przypadku wprowadzenia parametru -UnicodeIgnore w wierszu polecenia pliki rozpoczynające się od znacznika BOM UTF-16 będą traktowane jako puste.
    • Obsługa plików wyjściowych (tmh) w formacie Unicode. Domyślnie pliki wyjściowe będą kodowane przy użyciu bieżącej strony kodowej (CP_ACP). Aby wygenerować pliki wyjściowe w formacie Unicode, użyj parametrów wiersza polecenia -cp:UTF-8 lub -cp:UTF-16.
    • Zmiana działania: narzędzie tracewpp konwertuje teraz cały tekst wejściowy na format Unicode, wykonuje przetwarzanie w formacie Unicode i konwertuje tekst wyjściowy na określone kodowanie wyjściowe. We wcześniejszych wersjach narzędzia tracewpp unikano konwersji na format Unicode i wykonywano przetwarzanie tekstu z założeniem jednobajtowego zestawu znaków. Może to prowadzić do zmian działania, gdy pliki wejściowe nie są zgodne z bieżącą stroną kodową. W tych przypadkach, w których jest to problem, rozważ przekonwertowanie plików wejściowych na format UTF-8 (ze znacznikiem BOM) i/lub użycie parametru wiersza polecenia -cp:UTF-8 w celu uniknięcia niejednoznaczności kodowania.
  • Aktualizacje pliku TraceLoggingProvider.h:
    • Unikanie problemów z regułą jednej definicji (ODR) powodowanych przez konflikt makr konfiguracji (np. jeśli dwa pliki cpp z niezgodnymi definicjami elementu TLG_EVENT_WRITE_TRANSFER są połączone z tym samym plikiem binarnym, pomocniki TraceLoggingProvider.h będą teraz przestrzegać definicji elementu TLG_EVENT_WRITE_TRANSFER w poszczególnych plikach cpp, zamiast arbitralnie wybierać jedną lub drugą).
    • W kodzie C++ zaktualizowano makro TraceLoggingWrite w celu poprawy udostępniania kodu między podobnymi zdarzeniami za pomocą szablonów variadic.
  • Podpisywanie aplikacji. Funkcja podpisywania przy użyciu funkcji Device Guard jest dostępna w sklepie Microsoft Store dla Firm i dla instytucji edukacyjnych. Dzięki niej przedsiębiorstwa mogą zagwarantować, że każda aplikacja pochodzi z zaufanego źródła. Zapoznaj się z dokumentacją funkcji Device Guard — podpisywanie.
  • Nagłówki zestawu SDK zostały zaktualizowane w celu rozwiązania błędów podczas kompilowania przy użyciu preprocesora C zgodnego ze standardem w kompilatorze programu MSVC cl.exe (/Zc:preprocessor, wprowadzony w programie VS 2019 w wersji 16.6).
  • Naprawiono: „Nagłówek GdiplusTypes.h nie kompiluje przy użyciu makra NOMINMAX”. Zobacz opinie o programie Visual Studio.
  • Podczas kompilowania za pomocą /std:c11 lub /std:c17 można teraz uzyskać:
    • Nagłówek C99 tgmath.h
    • Makro C11 static_assert w nagłówku assert.h
    • Nagłówek C11 stdalign.h
    • Nagłówek C11 stdnoreturn.h
  • Kompilator Clang/LLVM dla systemu Windows 11 dla architektury ARM64 nie jest zgodny z najnowszym nagłówkiem winnt.h
    • Aby obejść ten problem, użyj poprzedniej wersji zestawu Windows 10 SDK (kompilacja 19041) lub kompilatora clang/LLVM dla systemu Windows 10 dla architektury platform ARM64
  • Biblioteka DirectXMath (w tym wersja 3.16 w tym wydaniu) nie jest zgodna z kompilatorem Clang/LLVM dla systemu Windows w architekturze ARM64.
  • Wielkość liter niektórych plików nagłówkowych została zmieniona, aby znormalizować je na potrzeby systemów plików z wielkością liter:
    • OAIdl.h, ObjIdl.h, ObjIdlbase.h, OCIdl.h, Ole2.h, OleAuto.h i OleCtl.h były pisane małymi literami.
    • W przypadku kompilacji Clang/LLVM dla systemu Windows, aby obsługiwać zarówno starszą wersję, jak i najnowszy zestaw Windows 10 SDK bez ostrzeżeń, dodaj do interfejsu wiersza polecenia pozycję „-Wno-nonportable-system-include-path” lub następujący tekst #pragma w źródle:

      #ifdef __clang__
      #pragma clang diagnostic ignored "-Wnonportable-system-include-path"
      #endif

Zestaw Windows 10 SDK, aktualizacja obsługi wersji 2004 (wydana 2020-12-16)

    To wydanie zawiera następujące pliki. Jeśli napotkasz te problemy, zalecamy jak najszybsze zaktualizowanie wersji zestawu SDK, aby ich uniknąć:
  • Usunięto nieprzewidywalne i trudne do zdiagnozowania awarie występujące w przypadku łączenia zarówno bibliotek parasolowych, jak i natywnych bibliotek systemu operacyjnego (na przykład onecoreuap.lib i kernel32.lib)
  • Rozwiązano problem uniemożliwiający działanie narzędzia AppVerifier
  • Rozwiązano problem, który powodował niepowodzenie zestawu WACK i zwrócenie błędu „Włączenie testu HighVersionLie przez zadanie nie powiodło się”

Przekaż opinię

Aby uzyskać informacje o znanych problemach, zobacz winapi-sdk — pytania i odpowiedzi.

Deweloperzy mogą przesyłać nowe żądania funkcji za pośrednictwem aplikacji Centrum opinii, w kategorii „Platforma dla deweloperów/interfejs API”.

Więcej zasobów

Pliki do pobrania i narzędzia

Pobierz najnowsze wersje programu Visual Studio oraz narzędzi programistycznych dla systemu Windows 10.

DOWIEDZ SIĘ WIĘCEJ

Archiwum zestawu SDK

Znajdź poprzednie wersje zestawu Windows SDK i innych narzędzi.

ZOBACZ ARCHIWUM

Blog dotyczący systemu Windows

Zasubskrybuj nasz blog, aby być na bieżąco z najnowszymi pakietami testowymi zestawu SDK.

OTRZYMUJ NOWE INFORMACJE O PAKIETACH TESTOWYCH ZESTAWU SDK

Arkusz z informacjami o cyklu życia systemu Windows

Znajdź najważniejsze daty aktualizacji wersji systemu Windows i końca wsparcia technicznego.

ZOBACZ ARKUSZ INFORMACYJNY