Software Development Kit (SDK)
SDK (от англ. «Software Development Kit» — «комплект программ для разработки») — это набор необходимых программных продуктов (библиотек, скриптов и т.п.), предназначенный для облегчения процесса разработки и тестирования кода для конкретных программных платформ (пакетов программ, аппаратных платформ и т.п.).
Производитель программной (аппаратной или программно-аппаратной) платформы заинтересован в притоке новых программистов, которые расширяют сферу применения основного продукта и потому предлагает комплект SDK чаще всего бесплатно. Для расширения функционала SDK и упрощения разработки могут применяться интегрированные среды разработки (IDE), взаимодействующие с SDK.
Часто производители платформ переименовывают предлагаемые SDK:
- JDK — Java Development Kit,
- ADT — Android Development Tools,
- Android NDK — Android Native Development Kit,
- WDK — Windows Driver Kit,
- DDK — Driver Development Kit.
Пакет Windows SDK
Windows SDK (10.0.22621) для Windows 11 версии 22H2 (обновлено в октябре 2023 г.) предоставляет последние заголовки, библиотеки, метаданные и средства для создания приложений Windows. Используйте этот пакет SDK для сборки приложений универсальная платформа Windows (UWP) и Win32 для Windows 11 версии 22H2 и предыдущих выпусков Windows.
Пакет SDK для приложений Windows
Windows App SDK предоставляет единый набор API и средств, которые отделены от ОС и выпущены для разработчиков с помощью пакетов NuGet. Эти API-интерфейсы и средства можно согласованно использовать в любом классическом приложении на Windows 11 и нижнем уровне для Windows 10, версия 1809.
Начало работы
Windows SDK можно получить двумя способами: установить его на этой странице, щелкнув ссылку для скачивания или выбрав «Windows 11 SDK (10.0.22621.0)» в дополнительных компонентах установщика Visual Studio 2022. Перед установкой этого пакета SDK:
- Проверка всех требований к системе
- Выйдите из Visual Studio перед установкой.
- Просмотрите заметки о выпуске и известные проблемы.
Последнее обновление: октябрь 2023 г.
Требования к системе
Windows SDK имеет следующие минимальные требования к системе:
Поддерживаемые операционные системы
- Windows 10 версии 1507 или выше: Домашняя, Профессиональная, Корпоративная и Корпоративная (LTSB и S не поддерживаются для UWP)
- Windows Server 2022, Windows Server 2019, Windows Server 2016 и Windows Server 2012 R2 (только командная строка)
- Windows 8.1
- Windows 7 с пакетом обновления 1 (SP1)
(Не все средства поддерживаются в более ранних операционных системах)
Требования к оборудованию
- Процессор с тактовой частотой 1,6 ГГц или большей
- 1 ГБ ОЗУ
- 4 ГБ доступного пространства на жестком диске
Дополнительные требования к пакету SDK
Для установки в Windows 8.1 и более ранних операционных системах требуется обновление для универсальной среды выполнения C в Windows. Для установки с помощью клиентский компонент Центра обновления Windows перед установкой windows SDK убедитесь, что установлены последние рекомендуемые обновления и исправления из Центра обновления Майкрософт.
Примеры
Примеры приложений для Windows теперь доступны на сайте GitHub. Вы можете просмотреть код на GitHub, клонировать личную копию репозитория из Git или скачать zip-архив всех примеров. Мы приветствуем отзывы, поэтому вы можете открыть проблему в репозитории, если у вас есть проблема или вопрос. Эти примеры предназначены для работы на настольных компьютерах, мобильных устройствах и будущих устройствах, поддерживающих универсальная платформа Windows (UWP).
Предыдущие версии пакета SDK
Ранее выпущенные пакеты SDK и эмуляторы, включая сведения об обновлении, можно найти на странице архива.
API Light Up
При использовании новых API рекомендуется написать адаптивное приложение, чтобы оно правильно выполнялось на самом широком массиве устройств Windows. Адаптивное приложение «загорается» с новыми функциями, где устройства и версия Windows поддерживают их, но в противном случае предлагает только функции, доступные в обнаруженной версии платформы. Сведения о реализации см. в статье Адаптивный к версии код.
Заметки о выпуске и известные проблемы
Windows 11, сборка 10.0.22621.2428 (выпущена 24.10.2023)
Обновление обслуживания 10.0.22621.2428.
Windows 11, версия 22H2, сборка 10.0.22621.1778
Обновление 10.0.22621.1778. К выделенным функциям относятся:
- API WindowTabManager позволяют приложениям с интерфейсами с вкладками предоставлять сведения об открытых вкладках в оболочку Windows.
- Обновления к API HumanPresence, чтобы повысить удобство использования и добавить новые параметры для датчиков, поддерживающих возможности присутствия человека.
- API RemoteDesktop позволяют приложениям переключаться между удаленным и локальным рабочим столом.
Windows SDK для Windows 11 версии 22H2
- Обновление для обслуживания 10.0.22621.755. Включает поддержку ARM64 для выпуска VS 17.4.
пакет SDK для Windows 10 версии 2104
- Удален api-ms-win-net-isolation-l1-1-0.lib. Приложения, которые связывались с api-ms-win-net-isolation-l1-1-0.lib, могут переключить t OneCoreUAP.lib в качестве замены.
- Удален файл irprops.lib. Приложения, которые связывались с файлом irprops.lib, могут переключиться на bthprops.lib в качестве замены.
- Перемещен enum tagServerSelection из wuapicommon.h в wupai.h и удален заголовок . Если вы хотите использовать enum tagServerSelection, необходимо включить wuapi.h или wuapi.idl.
- Пакет API Windows 10 WinRT позволяет добавлять последнюю поддержку API среда выполнения Windows в библиотеки и приложения платформа .NET Framework 4.5+ и .NET Core 3.0+ . Чтобы получить доступ к пакету API Windows 10 WinRT, см. пакет nuget Microsoft.Windows.SDK.Contracts.
- Семейство функций printf теперь соответствует правилам округления IEEE 754 при печати точно представленных чисел с плавающей запятой и учитывает режим округления, запрашиваемый с помощью вызовов fesetround. Устаревшее поведение доступно при связывании с legacy_stdio_float_rounding.obj.
- Комплект сертификации приложений для Windows. В список поддерживаемых API в комплекте сертификации приложений и Магазине Windows было добавлено несколько новых API. Если в списке поддерживаемых API отображаются серым или отключенным в Visual Studio, можно внести небольшое изменение в исходный файл, чтобы получить к ним доступ. Дополнительные сведения см. в этой известной проблеме. Дополнительные обновления для тестов.
- Обновления компилятора сообщений (mc.exe).
- Теперь обнаруживает метку порядка байтов Юникода (BOM) в MC-файлах. Если MC-файл начинается с спецификации UTF-8, он будет считываться как файл UTF-8. В противном случае, если он начинается с спецификации UTF-16LE, он будет считываться как файл UTF-16LE. Если указан параметр -u, он будет считываться как файл UTF-16LE. В противном случае он будет считываться с помощью текущей кодовой страницы (CP_ACP).
- Теперь позволяет избежать проблем с правилом с одним определением (ODR) во вспомогательных компонентах трассировки событий Windows, созданных MC, вызванных конфликтующими макросами конфигурации (например, если два CPP-файла с конфликтующими определениями MCGEN_EVENTWRITETRANSFER связаны с одним и тем же двоичным файлом, вспомогательные функции трассировки событий Windows, созданные MC, теперь будут учитывать определение MCGEN_EVENTWRITETRANSFER в каждом CPP-файле вместо произвольного выбора одного или другого).
- Поддерживает входные файлы Юникода (.ini, TPL и исходный код). Входные файлы, начиная с метки порядка байтов UTF-8 или UTF-16, будут считываться как Юникод. Входные файлы, которые не начинаются с BOM, будут считываться с помощью текущей кодовой страницы (CP_ACP). Для обеспечения обратной совместимости, если указан параметр командной строки -UnicodeIgnore, файлы, начиная с спецификации UTF-16, будут рассматриваться как пустые.
- Поддерживает выходные файлы Юникода (TMH). По умолчанию выходные файлы кодируются с помощью текущей кодовой страницы (CP_ACP). Используйте параметры командной строки -cp:UTF-8 или -cp:UTF-16 для создания выходных файлов Юникода.
- Изменение поведения: tracewpp теперь преобразует весь входной текст в Юникод, выполняет обработку в Юникоде и преобразует выходной текст в указанную кодировку вывода. Более ранние версии tracewpp избегали преобразований в Юникоде и выполняли обработку текста, предполагая однобайтовый набор символов. Это может привести к изменению поведения в случаях, когда входные файлы не соответствуют текущей кодовой странице. В случаях, когда это проблема, рассмотрите возможность преобразования входных файлов в UTF-8 (с меткой метки) и /или с помощью параметра командной строки -cp:UTF-8, чтобы избежать неоднозначности кодирования.
- Позволяет избежать проблем с правилом с одним определением (ODR), вызванных конфликтующими макросами конфигурации (например, если два CPP-файла с конфликтующими определениями TLG_EVENT_WRITE_TRANSFER связаны с одним двоичным файлом, вспомогательные функции TraceLoggingProvider.h теперь будут учитывать определение TLG_EVENT_WRITE_TRANSFER в каждом CPP-файле, а не произвольно выбирать один или другой).
- В коде C++ макрос TraceLoggingWrite был обновлен, чтобы обеспечить более качественный обмен кодом между аналогичными событиями с помощью вариадических шаблонов.
- C99 tgmath.h
- C11 static_assert в assert.h
- C11 stdalign.h
- C11 stdnoreturn.h
- В качестве обходного решения используйте предыдущую версию пакета SDK для Windows 10 (сборка 19041) или clang/LLVM для Windows версии 10 для платформ ARM64.
- В качестве обходного решения используйте последнюю версию DirectXMath, доступную в NuGet, vcpkg или GitHub. Эти версии включают необходимые исправления (версия 3.16b).
- www.nuget.org/packages/directxmath
- github.com/microsoft/vcpkg/tree/master/ports/directxmath
- github.com/microsoft/DirectXMath
- OAIdl.h, ObjIdl.h, ObjIdlbase.h, OCIdl.h, Ole2.h, OleAuto.h и OleCtl.h были сделаны в нижнем регистре.
- Для сборок Clang/LLVM для Windows, чтобы поддерживать как более старую версию, так и последнюю версию пакета SDK для Windows 10 без предупреждений, добавьте -Wno-nonportable-system-include-path в CLI или следующие #pragma в источнике:
#pragma clang diagnostic ignored «-Wnonportable-system-include-path»
пакет SDK для Windows 10, обновление обслуживания версии 2004 (выпущено 16.12.2020)
Этот выпуск содержит следующие файлы. При возникновении этих проблем рекомендуется как можно скорее обновить версию пакета SDK, чтобы избежать их:
- Устранены непредсказуемые и трудные для диагностики сбои при связывании общих библиотек и собственных библиотек ОС (например, onecoreuap.lib и kernel32.lib)
- Устранена проблема, из-за которой AppVerifier не работал
- Устранена проблема, которая приводила к сбою WACK с сообщением «Не удалось включить HighVersionLie»
Дополнительные ресурсы
Загрузки и средства Получите последние выпуски Visual Studio и средства разработки Windows 10.
Архив пакета SDK Поиск предыдущих выпусков пакета SDK для Windows и других средств.
Блог о Windows Оставайтесь на связи с последними тестами пакета SDK, подписавшись на наш блог.Информационный лист жизненного цикла Windows Найдите ключевые даты для обновлений выпуска Windows и окончания поддержки.
Windows Software Development Kit
Набор инструментальных средств WindowsSoftwareDevelopmentKit (SDK) доступен в виде части программы подписки MSDNили же может быть свободно загружен с сайта msdn.microsoft.com.
Кроме средств отладки DebuggingTools, он содержит документацию, заголовочные файлы языка C и библиотеки, необходимые для компиляции и компоновки Windows-приложений. (Хотя Microsoft Visual C++ поставляется с копией этих заголовочных файлов, версии, содержащиеся в Windows SDK, всегда соответствуют самым свежим версиям операционных систем Windows, а версии, поставляемые с Visual C++, могут быть более старыми, актуальными на время выхода Visual C++.)
С точки зрения внутреннего устройства, Windows SDK интересны заголовочные файлы Windows API (\ProgramFiles\MicrosoftSDKs\Windows\v7.0A\Include). Некоторые из инструментальных средств этого набора также поставляются в виде экземпляров исходного кода, как в Windows SDK, так и в библиотеке MSDN Library.
Related posts:
- Инструментальные средства для просмотра внутреннего устройства Windows.
- Windows Driver Kit
- Отладка ядра Windows
- Microsoft Visual Studio Express 2012 Free для Windows
Windows Software Development Kit: что это и можно ли его удалить
Windows software development kit (SDK) — это набор инструментов и документации, предоставляемых Microsoft для разработки программного обеспечения под операционную систему Windows. SDK включает в себя различные компоненты, такие как компиляторы, отладчики, библиотеки и драйверы, которые позволяют разработчикам создавать приложения для Windows.
Windows SDK предоставляет разработчикам доступ к API (application programming interface) операционной системы Windows, что позволяет им использовать функциональные возможности ОС и создавать приложения, которые могут работать под управлением Windows.
Удаление Windows SDK зависит от того, для каких целей он использовался. Если вы разработчик и не планируете больше разрабатывать приложения для Windows, то вы можете удалить SDK без каких-либо проблем. Однако, если вы все еще разрабатываете ПО для Windows или используете программы, написанные с помощью Windows SDK, удаление его может привести к некорректной работе или невозможности выполнения этих программ.
Несмотря на это, удаление Windows SDK в целом не представляет большой проблемы, поскольку его компоненты не влияют на основные функции операционной системы Windows. Тем не менее, перед удалением рекомендуется сделать резервную копию системы или создать точку восстановления, чтобы в случае проблем или нежелательных результатов, можно было вернуть систему к предыдущему состоянию.
Что такое Windows software development kit?
Windows SDK включает в себя различные компоненты, необходимые для создания, развертывания и отладки программного обеспечения для операционных систем Windows, включая библиотеки, заголовочные файлы, инструменты и документацию.
С помощью Windows SDK разработчики могут создавать приложения, которые могут использовать возможности операционной системы Windows, включая работу с файлами и папками, сетью, графическим интерфейсом, базами данных и другими компонентами.
Windows SDK также включает в себя различные инструменты для разработки, такие как компиляторы, отладчики и среды разработки, которые облегчают процесс создания и отладки программного обеспечения для операционной системы Windows.
Windows SDK обновляется регулярно, что позволяет разработчикам использовать новейшие функциональные возможности операционной системы Windows и обеспечивает совместимость приложений с последними версиями операционной системы.
