Windows SDK

Das Windows SDK (10.0.26100) für Windows 11 bietet die neuesten Header, Bibliotheken, Metadaten und Tools zum Erstellen von Windows-Anwendungen. Verwenden Sie dieses SDK, um UWP-Anwendungen (Universelle Windows-Plattform) und Win32-Anwendungen für Windows 11, Version 24H2 und frühere Windows-Versionen zu erstellen.

Trinkgeld

Windows App SDK-
Das Windows App SDK bietet einen einheitlichen Satz von APIs und Tools, die vom Betriebssystem entkoppelt und für Entwickler über NuGet-Pakete freigegeben werden. Diese APIs und Tools können von jeder Desktop-App unter Windows 11 und abwärts auf Windows 10, Version 1809, einheitlich verwendet werden.

Erste Schritte

Sie können das Windows SDK auf zwei Arten abrufen: Installieren Sie es auf dieser Seite, indem Sie den Downloadlink auswählen oder "Windows 11 SDK (10.0.26100.0)" in den optionalen Komponenten des Visual Studio 2022-Installers auswählen. Bevor Sie dieses SDK installieren:

Letzte Aktualisierung: September 2024

Systemanforderungen

Das Windows SDK verfügt über die folgenden Mindestsystemanforderungen:

Unterstützte Betriebssysteme

  • Windows 11, Version 21h2 oder höher: Home, Pro, Education und Enterprise (LTSC wird für UWP nicht unterstützt)
  • Windows 10, Version 1507 oder höher: Home, Pro, Education und Enterprise (LTSB/LTSC- und S-Modus werden für UWP nicht unterstützt)
  • Windows Server 2022, Windows Server 2019, Windows Server 2016 und Windows Server 2012 R2 (nur Befehlszeile)
  • Windows 8.1
  • Windows 7 SP1

(Nicht alle Tools werden auf früheren Betriebssystemen unterstützt)

Hardwareanforderungen

  • 1,6 GHz oder schneller Prozessor
  • 1 GB RAM
  • 4 GB verfügbarer Festplattenspeicher

Zusätzliche SDK-Anforderungen

Für die Installation unter Windows 8.1 und früheren Betriebssystemen ist ein Update für universelle C-Runtime in Windowserforderlich. Um windows Update zu installieren, stellen Sie sicher, dass Sie die neuesten empfohlenen Updates und Patches von Microsoft Update installieren, bevor Sie das Windows SDK installieren.

Proben

Windows-App-Beispiele sind jetzt über GitHub-verfügbar. Sie können den Code auf GitHub durchsuchen, eine persönliche Kopie des Repositorys von Git klonen oder ein zipped-Archiv aller Beispiele herunterladen . Wir freuen uns über Feedback, daher können Sie ein Problem innerhalb des Repositorys öffnen, wenn Sie ein Problem oder eine Frage haben. Diese Beispiele sind für die Ausführung auf Desktop-, Mobilgeräten und zukünftigen Geräten vorgesehen, die die Universelle Windows-Plattform (UWP) unterstützen.

Frühere SDK-Versionen

Zuvor veröffentlichte SDKs und Emulatoren, einschließlich Updatedetails, finden Sie auf der Archivseite.

API Light Up

Wenn Sie neue APIs verwenden, empfiehlt es sich, Ihre App so zu schreiben, dass sie für das breiteste Array von Windows-Geräten ordnungsgemäß ausgeführt wird. Eine adaptive App "leuchtet" mit neuen Features, wo immer die Geräte und Windows-Version sie unterstützen, bietet aber andernfalls nur die Funktionalität, die auf der erkannten Plattformversion verfügbar ist. Details zur Implementierung finden Sie im artikel Version adaptiven Code.

Versionshinweise und bekannte Probleme

Windows 11, Build 10.0.26100.1742 (veröffentlicht 9/24/2024)

Version, die mit der öffentlichen Version von Windows 11, Version 24h2, übereinstimmt.

Windows 11, Build 10.0.26100 (veröffentlicht am 22.05.2024)

Die erste Version der Serie 10.0.26100 entspricht der Vorschauversion von Windows 11, Version 24h2.

Windows 11, Build 10.0.22621.3235 (veröffentlicht 2/29/2024)

Wartungsupdate 10.0.22621.3235.

Windows 11, Build 10.0.22621.2428 (veröffentlicht 10/24/2023)

Wartungsupdate 10.0.22621.2428.

Windows 11, Version 22H2, Build 10.0.22621.1778

Update 10.0.22621.1778. Zu den hervorgehobenen Features gehören:

  • WindowTabManager-APIs ermöglichen Anwendungen mit Registerkartenschnittstellen, Informationen zu geöffneten Registerkarten in der Windows-Shell bereitzustellen.
  • Updates für HumanPresence-APIs, um die Benutzerfreundlichkeit zu verbessern und neue Einstellungen für Sensoren hinzuzufügen, die menschliche Anwesenheitsfunktionen unterstützen.
  • RemoteDesktop-APIs ermöglichen Es Anwendungen, zwischen einem Remote- und einem lokalen Desktop zu wechseln.
Windows SDK für Windows 11, Version 22H2
  • Wartungsupdate 10.0.22621.755. Enthält ARM64-Unterstützung für die VERSION VS 17.4
Windows 10 SDK, Version 2104
  • Api-ms-win-net-isolation-l1-1-0.lib entfernt. Apps, die eine Verknüpfung mit api-ms-win-net-isolation-l1-1-0.lib herstellen, können als Ersatz nicht oneCoreUAP.lib wechseln.

  • Irprops.lib entfernt. Apps, die mit irprops.lib verknüpft wurden, können als Drop-In-Ersatz zu bthprops.lib wechseln.

  • ENUM tagServerSelection von wuapicommon.h nach wupai.h verschoben und die Kopfzeile entfernt. Wenn Sie die ENUM tagServerSelection verwenden möchten, müssen Sie "wuapi.h" oder "wuapi.idl" einschließen.

  • Mit dem Windows 10 WinRT API Pack können Sie Ihre .NET Framework 4.5+- und .NET Core 3.0+-Bibliotheken und -Apps die neuesten Windows-Runtime-APIs hinzufügen. Informationen zum Zugriff auf das Windows 10 WinRT API Pack finden Sie im Microsoft.Windows.SDK.Contracts Nuget-Paket.

  • Die Printf-Familie von Funktionen entspricht jetzt den IEEE 754 Rundungsregeln beim Drucken exakt darstellbarer Gleitkommazahlen und wird den durch Aufrufe an Fesetroundangeforderten Rundungsmodus berücksichtigen. Legacyverhalten ist beim Verknüpfen mit legacy_stdio_float_rounding.objverfügbar.

  • Zertifizierungskit für Windows-Apps. Der Liste der unterstützten APIs im Zertifizierungskit für Apps und im Windows Store wurden mehrere neue APIs hinzugefügt. Wenn in der unterstützten Liste APIs vorhanden sind, die in Visual Studio abgeblendet oder deaktiviert angezeigt werden, können Sie eine kleine Änderung an Ihrer Quelldatei vornehmen, um auf sie zuzugreifen. Weitere Informationen finden Sie in diesem bekannten Problem. Finden Sie weitere Updates für Tests.

  • Nachrichtencompiler (mc.exe) Updates:

    • Erkennt nun das Unicode-Bytereihenfolgezeichen (BOM) in MC-Dateien. Wenn die MC-Datei mit einer UTF-8-BOM beginnt, wird sie als UTF-8-Datei gelesen. Andernfalls wird sie als UTF-16LE-Datei gelesen, wenn sie mit einer UTF-16LE-BOM beginnt. Wenn der parameter -u angegeben wurde, wird er als UTF-16LE-Datei gelesen. Andernfalls wird sie mit der aktuellen Codeseite gelesen (CP_ACP).
    • Vermeiden Sie jetzt Probleme mit einer Definitionsregel (ODR) in MC-generierten C/C++-ETW-Hilfsern, die durch widersprüchliche Konfigurationsmakros verursacht werden (z. B. wenn zwei .cpp Dateien mit widersprüchlichen Definitionen von MCGEN_EVENTWRITETRANSFER mit derselben Binärdatei verknüpft sind, berücksichtigt die MC-generierten ETW-Helfer nun die Definition von MCGEN_EVENTWRITETRANSFER in jeder .cpp Datei, anstatt willkürlich eine oder die andere zu wählen).
  • Windows Trace Preprocessor (tracewpp.exe) Updates:

    • Unterstützt Unicode-Eingabedateien (.ini, TPL und Quellcode). Eingabedateien, die mit einem UTF-8- oder UTF-16-Bytereihenfolgezeichen (UTF-16 byte order mark, BOM) beginnen, werden als Unicode gelesen. Eingabedateien, die nicht mit einer BOM beginnen, werden mithilfe der aktuellen Codepage gelesen (CP_ACP). Wenn der -UnicodeIgnore Befehlszeilenparameter angegeben ist, werden Dateien, die mit einer UTF-16-BOM beginnen, aus Gründen der Abwärtskompatibilität als leer behandelt.
    • Unterstützt Unicode-Ausgabedateien (.tmh). Standardmäßig werden Ausgabedateien mithilfe der aktuellen Codeseite (CP_ACP) codiert. Verwenden Sie Befehlszeilenparameter -cp:UTF-8 oder -cp:UTF-16, um Unicode-Ausgabedateien zu generieren.
    • Verhaltensänderung: Tracewpp konvertiert nun den gesamten Eingabetext in Unicode, führt die Verarbeitung in Unicode durch und konvertiert Ausgabetext in die angegebene Ausgabecodierung. In früheren Versionen von Tracewpp wurden Unicode-Konvertierungen vermieden und Textverarbeitung durchgeführt, wobei eine Einzelbyte-Zeichenmenge vorausgesetzt wird. Dies kann zu Verhaltensänderungen führen, wenn die Eingabedateien nicht der aktuellen Codeseite entsprechen. In Fällen, in denen dies ein Problem ist, sollten Sie die Eingabedateien in UTF-8 (mit BOM) konvertieren und/oder den Befehlszeilenparameter -cp:UTF-8 verwenden, um Codierungsdeutigkeit zu vermeiden.
  • TraceLoggingProvider.h updates:

    • Vermeidet Probleme mit einer Definitionsregel (ODR), die durch widersprüchliche Konfigurationsmakros verursacht werden (z. B. wenn zwei .cpp Dateien mit widersprüchlichen Definitionen von TLG_EVENT_WRITE_TRANSFER mit derselben Binärdatei verknüpft sind, berücksichtigt die Hilfsprogramme TraceLoggingProvider.h jetzt die Definition von TLG_EVENT_WRITE_TRANSFER in jeder .cpp Datei, anstatt willkürlich eine oder die andere zu wählen).
    • Im C++-Code wurde das TraceLoggingWrite-Makro aktualisiert, um eine bessere Codefreigabe zwischen ähnlichen Ereignissen mithilfe von variadischen Vorlagen zu ermöglichen.
  • Signieren Ihrer Apps. Device Guard-Signatur ist ein Device Guard-Feature, das im Microsoft Store für Unternehmen und Bildungseinrichtungen zur Verfügung steht, sodass Unternehmen garantieren können, dass jede App von einer vertrauenswürdigen Quelle stammt. Weitere Informationen zur Device Guard-Signatur-finden Sie in der -Dokumentation.

  • SDK-Header wurden aktualisiert, um Fehler beim Kompilieren mithilfe des standardmäßig konformen C-Präprozessors im MSVC-Compiler cl.exe (/Zc:preprocessor, eingeführt in VS 2019 v16.6) zu beheben.

  • Behoben: "GdiplusTypes.h kompiliert nicht mit NOMINMAX". Siehe Visual Studio Feedback.

  • Beim Erstellen mit /std:c11 oder /std:c17 erhalten Sie jetzt Folgendes:

    • C99 tgmath.h
    • C11-static_assert in assert.h
    • C11 stdalign.h
    • C11 stdnoreturn.h
  • Clang/LLVM für Windows v11 für ARM64 ist nicht kompatibel mit dem neuesten winnt.h

    • Verwenden Sie als Problemumgehung die vorherige Version des Windows 10 SDK (Build 19041) oder Clang/LLVM für Windows v10 für ARM64-Plattformen.
  • DirectXMath (einschließlich Version 3.16 in dieser Version) ist nicht kompatibel mit Clang/LLVM für Windows unter ARM64.

  • Die Groß-/Kleinschreibung einiger Headerdateien wurde geändert, um sie für Dateisysteme mit Groß-/Kleinschreibung zu normalisieren:

    • OAIdl.h, ObjIdl.h, ObjIdlbase.h, OCIdl.h, Ole2.h, OleAuto.h und OleCtl.h wurden alle kleingeschrieben.
    • Für Clang/LLVM für Windows-Builds fügen Sie der CLI -Wno-nonportable-system-include-path hinzu, um sowohl ältere Versionen als auch das neueste Windows 10 SDK ohne Warnungen zu unterstützen, oder die folgenden #pragma in der Quelle:

    #ifdef __clang__

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

    #endif

Windows 10 SDK, Version 2004-Wartungsupdate (veröffentlicht am 12.16.2020)

Diese Version enthält die folgenden Dateien. Wenn diese Probleme auftreten, empfiehlt es sich, Ihre Version des SDK so schnell wie möglich zu aktualisieren, um sie zu vermeiden:

  • Es wurden unvorhersehbare und schwer zu diagnostizierende Abstürze beim Verknüpfen von Dachbibliotheken und systemeigenen Betriebssystembibliotheken behoben (z. B. onecoreuap.lib und kernel32.lib)
  • Problem behoben, das verhindert hat, dass AppVerifier funktioniert
  • Es wurde ein Problem behoben, das dazu führte, dass WACK mit "Task failed to enable HighVersionLie" fehlschlug.

Weitere Ressourcen

  • Downloads und Tools

    Holen Sie sich die neuesten Editionen von Visual Studio und Windows 10-Entwicklungstools.

  • SDK-Archiv

    Suchen Sie vorherige Versionen des Window SDK und anderer Tools.

  • Windows-Blog

    Bleiben Sie mit den neuesten SDK-Flügen in Kontakt, indem Sie unseren Blog abonnieren.