Windows SDK

Windows SDK (10.0.26100) for Windows 11 sisältää uusimmat otsikot, kirjastot, metatiedot ja työkalut Windows-sovellusten luomiseen. Tämän SDK:n avulla voit luoda universaalin Windows-ympäristön (UWP) ja Win32-sovelluksia Windows 11:lle, versiolle 24H2 ja aiemmille Windows-versioille.

Juomaraha

Windows App SDK
Windows App SDK tarjoaa yhtenäisen joukon ohjelmointirajapintoja ja työkaluja, jotka erotetaan käyttöjärjestelmästä ja julkaistaan kehittäjille NuGet-pakettien kautta. Näitä ohjelmointirajapintoja ja työkaluja voi käyttää yhdenmukaisesti missä tahansa Windows 11 -työpöytäsovelluksessa ja Windows 10:n versiota 1809 käyttävässä versiossa.

Aloitusopas

Voit hankkia Windows SDK:n kahdella tavalla: asentaa sen tältä sivulta valitsemalla latauslinkin tai valitsemalla "Windows 11 SDK (10.0.26100.0)" Visual Studio 2022 Installerin valinnaisista osista. Ennen tämän SDK:n asentamista:

Asennusohjelman > lataaminen

Viimeksi päivitetty: syyskuu 2024

Järjestelmävaatimukset

Windows SDK sisältää seuraavat järjestelmävaatimukset:

Tuetut käyttöjärjestelmät

  • Windows 11, versio 21h2 tai uudempi: Home, Pro, Education ja Enterprise (LTSC ei ole tuettu UWP:ssä)
  • Windows 10, versio 1507 tai uudempi: Home, Pro, Education ja Enterprise (LTSB/LTSC ja S-tila eivät ole tuettuja UWP:ssä)
  • Windows Server 2022, Windows Server 2019, Windows Server 2016 ja Windows Server 2012 R2 (vain komentorivi)
  • Windows 8.1
  • Windows 7 SP1

(Kaikkia työkaluja ei tueta aiemmissa käyttöjärjestelmissä)

Laitteistovaatimukset

  • 1,6 GHz:n suoritin tai nopeampi suoritin
  • 1 Gt RAM-muistia
  • 4 Gt käytettävissä olevaa kiintolevytilaa

SDK:n lisävaatimukset

asennus Windows 8.1- ja aiempiin käyttöjärjestelmiin edellyttää Windows:n Universal C Runtime -päivityksen. Jos haluat asentaa Windows Updaten kautta, varmista, että asennat uusimmat suositellut päivitykset ja korjaustiedostot Microsoft Updatesta ennen Windows SDK:n asentamista.

Näytteitä

Windows-sovellusmallit ovat nyt käytettävissä githubsovelluksenkautta. Voit selata koodia GitHubissa, kloonata säilön henkilökohtaisen kopion Gitistä tai ladata zip-arkiston kaikista näytteistä. Otamme vastaan palautetta mielellämme, joten voit avata ongelman säilössä, jos sinulla on ongelmia tai kysymyksiä. Nämä mallit on suunniteltu käytettäväksi työpöydällä, mobiililaitteissa ja tulevissa laitteissa, jotka tukevat universaalia Windows-ympäristöä (UWP).

Aiemmat SDK-versiot

Aiemmin julkaistut SDK:t ja emulataattorit, mukaan lukien päivitystiedot, löytyvät arkistosivulta.

Ohjelmointirajapinnan valaistus

Kun käytät uusia ohjelmointirajapintoja, harkitse sovelluksesi kirjoittamista mukautuvaksi niin, että se toimii oikein laajimmin Windows-laitteissa. Mukautuva sovellus syttyy uusilla ominaisuuksilla aina, kun laitteet ja Windows-versio tukevat niitä, mutta muutoin se tarjoaa vain havaitussa käyttöympäristöversiossa käytettävissä olevat toiminnot. Toteutustiedot ovat version mukautuvan koodin artikkelissa.

Julkaisutiedot ja tunnetut ongelmat

Windows 11, koontiversio 10.0.26100.1742 (julkaistu 24.9.2024)

Julkaisu, joka vastaa Windows 11:n versiota 24h2, julkinen versio.

Windows 11, koontiversio 10.0.26100 (julkaistu 22.5.2024)

10.0.26100-sarjan ensimmäinen versio, joka vastaa Windows 11:n versiota 24h2 esikatselua.

Windows 11, koontiversio 10.0.22621.3235 (julkaistu 29.2.2024)

Ylläpidon päivitys 10.0.22621.3235.

Windows 11, koontiversio 10.0.22621.2428 (julkaistu 24.10.2023)

Ylläpidon päivitys 10.0.22621.2428.

Windows 11, versio 22H2, koontiversio 10.0.22621.1778

Päivitys 10.0.22621.1778. Korostettuja ominaisuuksia ovat muun muassa seuraavat:

  • WindowTabManager-ohjelmointirajapinnat mahdollistavat sen, että sovellukset, joissa on sarkainliittymiä, voivat tarjota tietoja Windows-liittymän avoimissa välilehdissä.
  • HumanPresence-ohjelmointirajapintojen päivitykset, jotka parantavat käytön helppoutta ja lisäävät uusia asetuksia ihmisen läsnäoloa tukeville antureille.
  • RemoteDesktop-ohjelmointirajapintojen avulla sovellukset voivat siirtyä etätyöpöydän ja paikallisen työpöydän välillä.
Windows SDK Windows 11:lle, versio 22H2
  • Ylläpidon päivitys 10.0.22621.755. Sisältää ARM64-tuen VS 17.4 -versiolle
Windows 10 SDK, versio 2104
  • Poistettu api-ms-win-net-isolation-l1-1-0.lib. Sovellukset, jotka linkittyivät api-ms-win-net-isolation-l1-1-0.lib:tä vastaan, voivat vaihtaa oneCoreUAP.lib-kirjastoa korvaajaksi.

  • Poistettu irprops.lib. Sovellukset, jotka linkittyivät irprops.lib:tä vastaan, voivat vaihtaa bthprops.lib-kirjastoon avattavana korvaajana.

  • Siirsi ENUM tagServerSelection -asetuksen wuapicommon.h-kohteesta wupai.h-ohjausobjektiin ja poisti otsikon. Jos haluat käyttää ENUM tagServerSelection -toimintoa, sinun on sisällettävä wuapi.h tai wuapi.idl.

  • Windows 10 WinRT -ohjelmointirajapintapaketin avulla voit lisätä uusimmat Windows Runtime -ohjelmointirajapintojen tuen .NET Framework 4.5+- ja .NET Core 3.0 +-kirjastoihisi ja -sovelluksiisi. Jos haluat käyttää Windows 10 WinRT -ohjelmointirajapintapakettia, lue Microsoft.Windows.SDK.Contracts nuget -paketti.

  • Funktioiden printf-perhe, noudattaa nyt IEEE 754:n pyöristyssääntöjä, kun tulostetaan tarkalleen edustettavissa olevia liukulukuja, ja se noudattaa pyöristystilaa, jota pyydetään kutsuilla fesetround. Vanha toiminta on käytettävissä, kun linkität legacy_stdio_float_rounding.obj.

  • Windows-sovellusten sertifiointipaketti. Useita uusia ohjelmointirajapintoja lisättiin tuettujen ohjelmointirajapintojen luetteloon sovellusten sertifiointipaketissa ja Windows-kaupassa. Jos tuetussa luettelossa on ohjelmointirajapintoja, jotka näkyvät harmaina tai poistettuina käytöstä Visual Studiossa, voit tehdä pienen muutoksen lähdetiedostoon niiden käyttämiseksi. Lisätietoja tunnetusta ongelmasta. Etsi lisää päivityksiä testeihin.

  • Viestinkääntäjä (mc.exe) päivittää:

    • Tunnistaa nyt Unicode-tavutilausmerkinnän .mc-tiedostoissa. Jos .mc-tiedoston alussa on UTF-8 BOM, se luetaan UTF-8-tiedostona. Muussa tapauksessa jos sen alussa on UTF-16LE BOM, se luetaan UTF-16LE-tiedostona. Jos -u-parametri on määritetty, se luetaan UTF-16LE-tiedostona. Muussa tapauksessa se luetaan käyttämällä nykyistä koodisivua (CP_ACP).
    • Nyt vältetään yksimääritelmäsäännön (ODR) ongelmat MC:n luomissa C/C++ ETW-aputoiminnoissa, jotka johtuvat ristiriitaisista määrityskohoista (esim. kun kaksi .cpp-tiedostoa, joissa on ristiriitaisia MCGEN_EVENTWRITETRANSFER määritelmiä, linkitetään samaan binaaritiedostoon, MC:n luomat ETW-aputoiminnot noudattavat nyt kunkin .cpp tiedoston MCGEN_EVENTWRITETRANSFER määritelmää sen sijaan, että ne poimitaan mielivaltaisesti toisiin).
  • Windows Trace Preprocessor (tracewpp.exe) -päivitykset:

    • Tukee Unicode-syötetiedostoja (.ini, .tpl- ja lähdekooditiedostoja). Syötetiedostot, jotka alkavat UTF-8- tai UTF-16-tavujärjestysmerkillä (BOM), luetaan Unicode-muodossa. Syötetiedostot, jotka eivät ala tuoterakennuksella, luetaan nykyisellä koodisivulla (CP_ACP). Jos -UnicodeIgnore komentoriviparametri on määritetty taaksepäin, UTF-16 BOM-parametrilla alkavat tiedostot käsitellään tyhjinä.
    • Tukee Unicode-tulostetiedostoja (.tmh). Oletusarvoisesti tulostiedostot koodataan käyttämällä nykyistä koodisivua (CP_ACP). Luo Unicode-tulostiedostot komentoriviparametreilla -cp:UTF-8 tai -cp:UTF-16.
    • Toiminta muuttuu: jäljitys muuntaa nyt kaiken syötetekstin Unicode-muotoon, suorittaa käsittelyn Unicodessa ja muuntaa tulostetekstin määritetyksi tulostekoodauksi. Tracewpp-funktion aiemmat versiot välttivät Unicode-muunnokset ja suorittivat tekstinkäsittelyn olettaen, että yksitavuinen merkistö. Tämä voi johtaa toiminnan muutoksiin tapauksissa, joissa syötetiedostot eivät ole nykyisen koodisivun mukaisia. Jos tästä on ongelmia, harkitse syötetiedostojen muuntamista UTF-8:ksi (BOM:n kanssa) ja/tai -cp:UTF-8-komentoriviparametrin käyttämistä moniselitteisyyden välttämiseksi.
  • TraceLoggingProvider.h-päivitykset:

    • Tällä vältetään määrityskoovien ristiriitaisten määritys makrojen aiheuttamat yhden määritelmän (ODR) ongelmat (esim. kun kaksi .cpp-tiedostoa, joissa on ristiriitaisia TLG_EVENT_WRITE_TRANSFER määritelmiä, linkitetään samaan binaariin, TraceLoggingProvider.h-aputoiminnot noudattavat nyt kuhunkin .cpp tiedostoon TLG_EVENT_WRITE_TRANSFER määritelmää sen sijaan, että ne poimiisivat toisen satunnaisesti).
    • C++-koodin TraceLoggingWrite-makro on päivitetty, jotta koodia voidaan jakaa paremmin samankaltaisten tapahtumien välillä variadisia malleja käyttämällä.
  • Sovellusten allekirjoittaminen. Device Guard -allekirjoitus on Device Guard -toiminto, joka on saatavilla Microsoft Store for Business and Educationissa ja jonka avulla yritykset voivat taata, että jokainen sovellus on peräisin luotetusta lähteestä. Katso device guard -.

  • SDK-otsikot on päivitetty korjaamaan virheet, kun ne käännetään käyttämällä standard-conformant C -esikäsittelyä MSVC-kääntäjän cl.exe (/Zc:preprocessor, joka otettiin käyttöön VS 2019 v16.6:ssa).

  • Kiinteä: "GdiplusTypes.h ei käännä kohdetta NOMINMAX". Katso Visual Studion palaute.

  • Kun luot käyttäen /std:c11 tai /std:c17, saat nyt seuraavaa:

    • C99 tgmath.h
    • C11 static_assert vakuuttavasti.h
    • C11 stdalign.h
    • C11 stdnoreturn.h
  • Clang/LLVM for Windows v11 targeting ARM64 ei ole yhteensopiva viimeisimmän winnt.h:n kanssa

    • Vaihtoehtoisena menetelmänä voit käyttää Windows 10 SDK:n aiempaa versiota (koontiversio 19041) tai clang/LLVM for Windows v10-versiota, kun sen kohteena ovat ARM64-ympäristöt
  • DirectXMath (mukaan lukien tämän version 3.16 versio) ei ole yhteensopiva Clang/LLVM for Windowsin ARM64:n kanssa.

  • Joidenkin otsikkotiedostojen tapausta muutettiin normalisoimaan kirjainkoko huomioon ottavassa tiedostojärjestelmässä:

    • OAIdl.h, ObjIdl.h, ObjIdlbase.h, OCIdl.h, Ole2.h, OleAuto.h ja OleCtl.h tehdään kaikki pienillä kirjaimilla.
    • Clang/LLVM for Windows -koontiversioiden osalta voit tukea sekä vanhempaa versiota että uusinta Windows 10 SDK:ta ilman varoituksia lisäämällä -Wno-nonportable-system-include-path komentorivikäyttöliittymään tai seuraavia lähteen #pragma:

    #ifdef __clang__

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

    #endif

Windows 10 SDK, version 2004 palvelupäivitys (julkaistu 16.12.2020)

Tämä julkaisuversio sisältää seuraavat tiedostot. Jos kohtaat näitä ongelmia, suosittelemme päivittämään SDK-versiosi mahdollisimman pian niiden välttämiseksi:

  • Ratkaistu arvaamattomat ja vaikeat vianmääritykset, kun yhdistetään sekä sateenvarjokirjastoja että alkuperäisiä käyttöjärjestelmän kirjastoja (esimerkiksi onecoreuap.lib ja kernel32.lib)
  • Ratkaistu ongelma, joka esti AppVerifieria toimimasta
  • Ratkaistu ongelma, joka aiheutti WACKin epäonnistumisen ja jonka vuoksi HighVersionLie-toiminnon käyttöönotto epäonnistui.

Lisää resursseja

  • SDK-arkisto

    Etsi Window SDK:n ja muiden työkalujen aiemmat versiot.

  • Windows-blogi

    Voit pitää yhteyttä uusimpiin SDK-lentoihin tilaamalla blogimme.