Windows SDK

De Windows SDK (10.0.26100) voor Windows 11 biedt de nieuwste headers, bibliotheken, metagegevens en hulpprogramma's voor het bouwen van Windows-toepassingen. Gebruik deze SDK om UWP- en Win32-toepassingen (Universal Windows Platform) te bouwen voor Windows 11, versie 24H2 en eerdere Versies van Windows.

Fooi

Windows App SDK-
De Windows App SDK biedt een geïntegreerde set API's en hulpprogramma's die zijn losgekoppeld van het besturingssysteem en die zijn vrijgegeven aan ontwikkelaars via NuGet-pakketten. Deze API's en hulpprogramma's kunnen op een consistente manier worden gebruikt door elke bureaublad-app in Windows 11 en downlevel naar Windows 10, versie 1809.

Slag

U kunt de Windows SDK op twee manieren ophalen: installeer deze op deze pagina door de downloadkoppeling te selecteren of door 'Windows 11 SDK (10.0.26100.0)' te selecteren in de optionele onderdelen van het Installatieprogramma van Visual Studio 2022. Voordat u deze SDK installeert:

de .iso > downloaden

Laatst bijgewerkt: september 2024

Systeemvereisten

De Windows SDK heeft de volgende minimale systeemvereisten:

Ondersteunde besturingssystemen

  • Windows 11, versie 21h2 of hoger: Home, Pro, Education en Enterprise (LTSC wordt niet ondersteund voor UWP)
  • Windows 10, versie 1507 of hoger: Home, Pro, Education en Enterprise (LTSB/LTSC en S-modus worden niet ondersteund voor UWP)
  • Windows Server 2022, Windows Server 2019, Windows Server 2016 en Windows Server 2012 R2 (alleen opdrachtregel)
  • Windows 8.1
  • Windows 7 SP1

(Niet alle hulpprogramma's worden ondersteund op eerdere besturingssystemen)

Hardwarevereisten

  • 1,6 GHz of snellere processor
  • 1 GB RAM-geheugen
  • 4 GB beschikbare schijfruimte

Aanvullende SDK-vereisten

Installatie op Windows 8.1 en eerdere besturingssystemen vereist een update voor Universal C Runtime in Windows. Als u wilt installeren via Windows Update, moet u ervoor zorgen dat u de meest recente aanbevolen updates en patches van Microsoft Update installeert voordat u de Windows SDK installeert.

Monsters

Voorbeelden van Windows-apps zijn nu beschikbaar via GitHub-. U kunt door de code op GitHub bladeren, een persoonlijke kopie van de opslagplaats klonen vanuit Git of een gezipt archief met alle voorbeelden downloaden. We ontvangen graag feedback, dus u kunt gerust een probleem openen in de opslagplaats als u een probleem of vraag hebt. Deze voorbeelden zijn ontworpen om te worden uitgevoerd op desktop-, mobiele en toekomstige apparaten die ondersteuning bieden voor het Universal Windows Platform (UWP).

Vorige SDK-versies

Eerder uitgebrachte SDK's en emulators, inclusief updatedetails, vindt u op de archiefpagina.

API Light Up

Wanneer u nieuwe API's gebruikt, kunt u overwegen uw app te schrijven om adaptief te zijn, zodat deze correct wordt uitgevoerd op de breedste reeks Windows-apparaten. Een adaptieve app wordt 'verlicht' met nieuwe functies waar de apparaten en de Windows-versie deze ondersteunt, maar biedt anders alleen de functionaliteit die beschikbaar is op de gedetecteerde platformversie. Zie het artikel over adaptieve code voor -versievoor implementatiedetails.

Opmerkingen bij de release en bekende problemen

Windows 11, Build 10.0.26100.1742 (uitgebracht op 24-9-2024)

Release die overeenkomt met de openbare release van Windows 11, versie 24h2.

Windows 11, Build 10.0.26100 (uitgebracht op 22-5-2024)

Initiële release van de 10.0.26100-serie, die overeenkomt met windows 11, versie 24h2 preview.

Windows 11, Build 10.0.22621.3235 (uitgebracht op 29-29-2024)

Onderhoudsupdate 10.0.22621.3235.

Windows 11, Build 10.0.22621.2428 (uitgebracht op 24-24-2023)

Onderhoudsupdate 10.0.22621.2428.

Windows 11, versie 22H2, build 10.0.22621.1778

Update 10.0.22621.1778. Gemarkeerde functies zijn onder andere:

  • Met WindowTabManager-API's kunnen toepassingen met interfaces met tabbladen informatie geven over geopende tabbladen naar de Windows-shell.
  • Updates voor HumanPresence-API's om het gebruiksgemak te verbeteren en nieuwe instellingen toe te voegen voor sensoren die ondersteuning bieden voor menselijke aanwezigheidsmogelijkheden.
  • Met RemoteDesktop-API's kunnen toepassingen schakelen tussen een extern en lokaal bureaublad.
Windows SDK voor Windows 11, versie 22H2
  • Onderhoudsupdate 10.0.22621.755. Bevat ARM64-ondersteuning voor de VS 17.4-release
Windows 10 SDK, versie 2104
  • Api-ms-win-net-isolation-l1-1-0.lib verwijderd. Apps die zijn gekoppeld aan api-ms-win-net-isolation-l1-1-0.lib kunnen overschakelen naar OneCoreUAP.lib als vervanging.

  • Irprops.lib verwijderd. Apps die zijn gekoppeld aan irprops.lib kunnen overschakelen naar bthprops.lib als vervanging voor drop-in.

  • EnUM tagServerSelection verplaatst van wuapicommon.h naar wupai.h en de header is verwijderd. Als u de ENUM tagServerSelection wilt gebruiken, moet u wuapi.h of wuapi.idl opnemen.

  • Met het Windows 10 WinRT API Pack kunt u de nieuwste Ondersteuning voor Windows Runtime-API's toevoegen aan uw .NET Framework 4.5+ en .NET Core 3.0+-bibliotheken en -apps. Zie het Microsoft.Windows.SDK.Contracts nuget-pakketvoor toegang tot het Windows 10 WinRT API Pack.

  • De printf-serie functies voldoet nu aan de IEEE 754-afrondingsregels bij het afdrukken van exact drijvendekommagetalnummers en zal voldoen aan de afrondingsmodus die wordt aangevraagd via aanroepen naar fesetround. Verouderd gedrag is beschikbaar bij het koppelen met legacy_stdio_float_rounding.obj.

  • Certificeringskit voor Windows-apps. Er zijn verschillende nieuwe API's toegevoegd aan de lijst ondersteunde API's in de App Certification Kit en Windows Store. Als er API's in de ondersteunde lijst staan die grijs worden weergegeven of uitgeschakeld in Visual Studio, kunt u een kleine wijziging aanbrengen in uw bronbestand om ze te openen. Zie dit bekende probleemvoor meer informatie. Meer updates voor testszoeken.

  • Berichtcompilatie (mc.exe) updates:

    • Detecteert nu het Unicode-bytevolgordeteken (BOM) in .mc-bestanden. Als het MC-bestand begint met een UTF-8 BOM, wordt het gelezen als een UTF-8-bestand. Als het anders begint met een UTF-16LE BOM, wordt deze gelezen als een UTF-16LE-bestand. Als de parameter -u is opgegeven, wordt deze gelezen als een UTF-16LE-bestand. Anders wordt deze gelezen met behulp van de huidige codepagina (CP_ACP).
    • Vermijd nu ODR-problemen (One Definition-Rule) in door MC gegenereerde ETW-helpers die worden veroorzaakt door conflicterende configuratiemacro's (bijvoorbeeld wanneer twee .cpp bestanden met conflicterende definities van MCGEN_EVENTWRITETRANSFER zijn gekoppeld aan hetzelfde binaire bestand, zullen de DOOR MC gegenereerde ETW-helpers nu de definitie van MCGEN_EVENTWRITETRANSFER in elk .cpp bestand respecteren in plaats van willekeurig een of de andere te kiezen).
  • Updates voor Windows Trace Preprocessor (tracewpp.exe):

    • Ondersteunt Unicode-invoerbestanden (.ini, .tpl en broncode). Invoerbestanden die beginnen met een UTF-8 of UTF-16 byte ordermarkering (BOM) worden gelezen als Unicode. Invoerbestanden die niet met een stuklijst beginnen, worden gelezen met behulp van de huidige codepagina (CP_ACP). Als voor compatibiliteit met eerdere versies de -UnicodeIgnore opdrachtregelparameter is opgegeven, worden bestanden die beginnen met een UTF-16 BOM als leeg behandeld.
    • Ondersteunt Unicode-uitvoerbestanden (.tmh). Standaard worden uitvoerbestanden gecodeerd met behulp van de huidige codepagina (CP_ACP). Gebruik opdrachtregelparameters -cp:UTF-8 of -cp:UTF-16 om Unicode-uitvoerbestanden te genereren.
    • Gedragswijziging: tracewpp converteert nu alle invoertekst naar Unicode, voert verwerking uit in Unicode en converteert uitvoertekst naar de opgegeven uitvoercodering. Eerdere versies van tracewpp hebben Unicode-conversies vermeden en tekstverwerking uitgevoerd uitgaande van een tekenset met één byte. Dit kan leiden tot gedragswijzigingen in gevallen waarin de invoerbestanden niet voldoen aan de huidige codepagina. In gevallen waarin dit een probleem is, kunt u overwegen de invoerbestanden te converteren naar UTF-8 (met BOM) en/of de opdrachtregelparameter -cp:UTF-8 te gebruiken om dubbelzinnigheid te voorkomen.
  • TraceLoggingProvider.h-updates:

    • Vermijd odr-problemen (one-definition-rule) die worden veroorzaakt door conflicterende configuratiemacro's (bijvoorbeeld wanneer twee .cpp bestanden met conflicterende definities van TLG_EVENT_WRITE_TRANSFER zijn gekoppeld aan hetzelfde binaire bestand, zullen de Helpers TraceLoggingProvider.h nu de definitie van TLG_EVENT_WRITE_TRANSFER in elk .cpp bestand respecteren in plaats van willekeurig een of het andere te kiezen).
    • In C++-code is de macro TraceLoggingWrite bijgewerkt om het delen van code tussen vergelijkbare gebeurtenissen mogelijk te maken met behulp van variadic-sjablonen.
  • Uw apps ondertekenen. Device Guard-ondertekening is een Device Guard-functie die beschikbaar is in Microsoft Store voor Bedrijven en Onderwijs, waarmee ondernemingen elke app kunnen garanderen van een vertrouwde bron. Zie de documentatie over Device Guard Signing.

  • SDK-headers zijn bijgewerkt om fouten op te lossen bij het compileren van de standaardconforme C-preprocessor in de MSVC-compiler cl.exe (/Zc:preprocessor, geïntroduceerd in VS 2019 v16.6).

  • Opgelost: "GdiplusTypes.h compileert niet met NOMINMAX". Zie De feedback van Visual Studio.

  • Wanneer u bouwt met /std:c11 of /std:c17, krijgt u nu het volgende:

    • C99 tgmath.h
    • C11 static_assert in assert.h
    • C11 stdalign.h
    • C11 stdnoreturn.h
  • Clang/LLVM voor Windows v11 gericht op ARM64 is niet compatibel met de nieuwste winnt.h

    • Gebruik als tijdelijke oplossing de vorige versie van de Windows 10 SDK (build 19041) of clang/LLVM voor Windows v10 bij het richten van ARM64-platforms
  • DirectXMath (inclusief versie 3.16 in deze release) is niet compatibel met Clang/LLVM voor Windows op ARM64.

  • Het geval van sommige headerbestanden is gewijzigd om ze te normaliseren voor hoofdlettergevoelige bestandssystemen:

    • OAIdl.h, ObjIdl.h, ObjIdlbase.h, OCIdl.h, Ole2.h, OleAuto.h en OleCtl.h zijn allemaal kleine letters gemaakt.
    • Voor Clang/LLVM voor Windows-builds, ter ondersteuning van zowel oudere versie als de nieuwste Windows 10 SDK zonder waarschuwingen, voegt u -Wno-nonportable-system-include-path toe aan de CLI of de volgende #pragma in de bron:

    #ifdef __clang__

    #pragma clang diagnostic ignored "-Wnonportable-system-include-path"

    #endif

Windows 10 SDK, versie 2004 onderhoudsupdate (uitgebracht op 12-16-2020)

Deze release bevat de volgende bestanden. Als u deze problemen ondervindt, raden we u aan uw versie van de SDK zo snel mogelijk bij te werken om ze te voorkomen:

  • Onvoorspelbare en moeilijk te diagnosticeren crashes opgelost bij het koppelen van zowel paraplubibliotheken als systeemeigen besturingssysteembibliotheken (bijvoorbeeld onecoreuap.lib en kernel32.lib)
  • Probleem opgelost waardoor AppVerifier niet werkt
  • Probleem opgelost waardoor WACK mislukt met 'Taak kan HighVersionLie niet inschakelen'

Meer resources