Новые возможности для разработчиков в Windows 10 (сборка 19041)

В этой серии статей содержится информация и рекомендации, касающиеся возможностей, добавленных в Windows 10 сборки 19041 (также известной как версия 2004). Полный список новых пространств имен, добавленных в пакет SDK для Windows, см. в статье об изменениях API в Windows 10 (сборка 19041). Дополнительные сведения об основных функциях Windows 10 см. в разделе Потрясающие возможности Windows 10.

Приложения для Windows 10

Возможность Description
Воспроизведение звука через Bluetooth В статье Включение воспроизведения звука с устройств, подключенных удаленно по Bluetooth описано, как использовать AudioPlaybackConnection, чтобы удаленные устройства, подключенные по Bluetooth, могли воспроизводить звук на локальном компьютере, позволяя выполнять такие сценарии, как настройка ПК на работу в качестве динамика Bluetooth и предоставление пользователям возможности слушать аудио с телефона.
Перенос приложения C# Мы описали процесс переноса приложения C# в C++/WinRT. Статья Перенос примера буфера обмена в C++/WinRT из C# — пример использования является контекстной и основывается на конкретном реальном опыте по переносу. Связанная с этим статья Переход на C++/WinRT с C# предоставляет более подробный обзор технических деталей и действий, связанных с переносом.
C++/WinRT Узнайте об обновлениях C++/WinRT для улучшения производительности во время сборки и выполнения (результат совместной работы с группой разработчиков Visual C++) в разделе Сводка по последним улучшениям и дополнениям за март 2020 г.
Для C++/WinRT мы добавили дополнительные сведения в следующие темы: перенос из C++/CX, перенос из C#, простой пример библиотеки пользовательского интерфейса Windows для C++/WinRT, параллелизм, get_unknown() и создание пользовательских (на основе шаблона) элементов управления XAML с помощью C++/WinRT.
DirectX Мы обновили несколько связанных с DirectX статей о новых возможностях для нескольких прошлых выпусков Windows, начиная с Creators Update до Windows 10 версии 1903. Новые возможности в DirectWrite, Усовершенствования DXGI 1.6 и Новые возможности в Direct3D 12.
Directxmath Мы опубликовали 21 новую статью о DirectXMath, где описываются две структуры матрицы, а также их функции-члены и свободные функции. Структура XMFLOAT3X4 является примером.
Direct3d В статье об использовании DirectX с дисплеями высокого динамического диапазона и расширенным цветом предоставляется список рекомендаций для приложений Windows с высоким динамическим диапазоном.
Новый интерфейс ID3D11On12Device2 и его методы позволяют получать ресурсы, созданные с помощью API Direct3D 11, и использовать их в Direct3D 12.
Direct3D 12 Добавлен уровень компонентов Direct3D 12 Core 1.0, который устройства могут использовать только для вычислений.
Добавлены новые разделы для интерфейса ID3D12Debug3.
Direct ML В DirectML добавлены 18 операторов и низкоуровневый интерфейс API с аппаратным ускорением, на котором создается WinML. Пример: структура DML_ACTIVATION_SHRINK_OPERATOR_DESC.
Отчеты об ошибках Функция RoFailFastWithErrorContextInternal2 была добавлена в Win32, что вызывает исключение, которое может содержать дополнительный контекст ошибки.
Машинное обучение Машинное обучение Windows теперь поддерживает ONNX версии 1.4 и набор операций 9.
API CloseModelOnSessionCreation позволяет экономить память, автоматически закрывая модель обучения, когда она больше не нужна.
Wi-Fi Добавлено несколько новых собственных функций и структур Wi-Fi, например функция WlanDeviceServiceCommand.
Хот-спот Wi-Fi 2 В статье Подготовка профиля Wi-Fi с помощью веб-сайта описаны новые функции для Хот-спота Wi-Fi 2.
Взаимодействие Windows Holographic Добавлен заголовок windows.graphics.holographic.interop.h с 17 API-интерфейсами Win32. API-интерфейсы предназначены для взаимодействия между средой выполнения Win32 и Windows. Хотя API-интерфейсы были добавлены в Windows 10 (сборка 18362), заголовок является новым для сборки 19041.
Сокеты Windows В содержимое SPI Windows Sockets 2 были добавлены несколько улучшений. Примером одного из многих улучшенных и дополненных разделов является раздел функции обратного вызова LPWSPEVENTSELECT.
Основные сведения о XAML Islands Разместите элементы управления XAMl UWP в классических приложениях Windows с помощью XAML Islands. Узнайте, как разместить элемент управления UWP в приложении WPF на C# с помощью XAML Islands, а также разместить стандартный элемент управления UWP в приложении Win32 на C++.
Пользовательские элементы управления XAML Islands Пакеты NuGet Microsoft.Toolkit.Win32.UI.XamlApplication и Microsoft.Toolkit.Win32.UI.SDK упрощают размещение пользовательских элементов управления XAML UWP в приложениях .NET и Win32 на C++.
Пошаговые руководства см. в статьях Размещение настраиваемого элемента управления UWP в приложении WPF, использующем XAML Islands и Размещение настраиваемого элемента управления UWP в приложении Win32 на C++.
Наконец, рекомендации по более сложным сценариям Win32 на C++ см. в статье Расширенные сценарии для XAML Islands в приложениях Win32 на C++.

Создание решений с помощью Windows

Возможность Description
Среда разработки Windows В документации по среде разработки Windows предоставлены ресурсы по использованию Windows для разработки на различных платформах для достижения любых целей разработки.
Python в Windows В разделе Python в Windows содержатся сведения для разработчиков, которые имеют небольшой опыт работы с языком Python, а также для разработчиков, которым необходимо оптимизировать разработку на Python с помощью других инструментов, доступных в Windows. Узнайте, как настроить среду Python для веб-разработки и взаимодействия с базами данных.
NodeJS в Windows В статье Настройка среды разработки Node.js в подсистеме Windows для Linux версии 2 содержатся подробные рекомендации для опытных разработчиков, выполняющих развертывание на серверах Linux. Также доступны инструкции по настройке для популярных веб-платформ Node.js, взаимодействия с базами данных и контейнеров Docker.
Использование Mac в Windows Наше руководство по изменению среды разработки предназначено для пользователей, переводящих свою платформу разработки с Mac на Windows, и предоставляет сопоставления для сравнимых ярлыков и служебных программ разработки.
Терминал Windows Современное приложение терминала для пользователей средств и оболочек командной строки, таких как Командная строка, PowerShell и Подсистема Windows для Linux (WSL). К его основным функциям относится поддержка нескольких вкладок, панелей, символов Юникода и UTF-8, а также модуль отрисовки текста с ускоренным GPU, возможность создания собственных тем и настройки текста, цвета, фона и сочетаний клавиш.
WSL 2 Теперь доступна новая версия подсистемы Windows для Linux (WSL). В WSL 2 реализована перенастроенная архитектура для запуска фактического ядра Linux в Windows, что повышает производительность файловой системы и добавляет полную совместимость системных вызовов. Эта новая архитектура изменяет способ взаимодействия двоичных файлов Linux с Windows и оборудованием компьютера, но по-прежнему предоставляет то же взаимодействие с пользователем, что и предыдущая версия WSL. Каждое отдельное распределение Linux может работать как дистрибутив WSL1 или WSL2, может быть запущено параллельно и изменено в любое время.
Чтобы приступить к работе, установите WSL 2.
См. дополнительные сведения об изменениях в WSL 1 и WSL 2.
Просмотрите статью Часто задаваемые вопросы о WSL 2.

Упаковка и развертывание с использованием MSIX

Возможность Description
MSIX После последнего выпуска пакета SDK для Windows 10 были внесены значительные изменения в формат пакета MSIX.
Упаковка с помощью служб Формат MSIX и средство упаковки MSIX теперь поддерживают пакеты приложений, содержащие службы.
Скрипты в пакетах MSIX Вы можете использовать платформу поддержки пакетов (PSF) для запуска скриптов в пакете приложения MSIX, что позволит ИТ-специалистам динамически настраивать приложение в среде пользователя после упаковки с помощью MSIX.
Принудительная проверка целостности пакетов Теперь можно принудительно применить проверку целостности содержимого пакетов MSIX с помощью элемента uap10:PackageIntegrity в манифесте пакета. Принудительно применить проверку целостности пакетов также можно при создании пакетов MSIX с помощью средства упаковки MSIX.
Упаковка с внешним расположением Удостоверение пакета можно предоставить путем создания и регистрации пакета с внешним расположением (см. раздел "Предоставление удостоверения пакета", упаковав его с внешним расположением). Этот параметр полезен, если вы не можете применить MSIX для установки классического приложения и по-прежнему использовать функции расширения Windows, требующие удостоверения пакета.
Размещенные приложения Теперь можно создать размещенные приложения. Размещенные приложения совместно используют те же исполняемый файл и определение, что и родительское размещенное приложение, но они выглядят и ведут себя как отдельное приложение в системе. Размещенные приложения полезны для сценариев, когда требуется, чтобы компонент (например, исполняемый файл или файл скрипта) работал как автономное приложение Для Windows, но компоненту требуется процесс узла для выполнения. Размещенное приложение может иметь собственную плитку запуска, удостоверение и глубокую интеграцию с функциями Windows, такими как фоновые задачи, уведомления, плитки и целевые объекты общего доступа.

Библиотека пользовательского интерфейса Windows (WinUI)

Возможность Description
WinUI 2.4 WinUI 2.4 — это последний общедоступный выпуск Библиотеки пользовательского интерфейса Windows. Все версии WinUI предоставляют широкий спектр официальных элементов управления пользовательским интерфейсом для приложений Windows и предоставляются как пакет NuGet независимо от пакета Windows SDK, поэтому они работают над более ранними версиями Windows 10. Чтобы установить WinUI, выполните эти инструкции.
RadialGradientBrush. Новый объект RadialGradientBrush в WinUI 2.4 заполняет область внутри эллипса, который определяется свойствами Center, RadiusX и RadiusY. Начальный цвет градиента определяется в центре эллипса, а конечный — в конце радиуса.
ProgressRing Новый элемент управления ProgressRing в WinUI 2.4 используется для модальных взаимодействий, при которых действия пользователя блокируются до исчезновения ProgressRing. Используйте этот элемент управления, если для операции требуется приостановить значительную часть взаимодействий с приложением до ее завершения.
TabView Обновления элемента управления TabView обеспечивают дополнительный контроль над отображением вкладок. Вы можете задать ширину невыбранных вкладок и показать только значок для сохранения экранного пространства. Кроме того, можно скрыть кнопку закрытия на невыбранных вкладках, пока пользователь не наведет указатель мыши на вкладку.
Элементы управления TextBox Теперь, когда включена темная тема, при вставке текста цвет фона элементов управления семейства TextBox по умолчанию остается темным. Затронутые элементы управления: TextBox, RichEditBox, PasswordBox, Редактируемый ComboBox и AutoSuggestBox.
NavigationView Элемент управления NavigationView теперь поддерживает иерархическую навигацию и режимы отображения Left, Top и LeftCompact. Иерархический элемент управления NavigationView полезен для отображения категорий страниц и определения страниц со связанными дочерними страницами, а также для использования приложений со звездообразной топологией страниц, когда одна страница может быть связана со многими другими страницами.
Коллекция пользовательского интерфейса Windows Примеры каждой функции WinUI доступны в коллекции элементов управления XAML. Скачайте ее с Microsoft Store или просмотрите исходный код на сайте GitHub.
предыдущих версий После предыдущего основного выпуска пакета SDK для Windows 10 были также выпущены WinUI 2.3 и WinUI 2.2, которые предоставляют новые функции пользовательского интерфейса для разработчиков Windows.

Примеры

Следующие примеры приложений были обновлены для Windows 10 (сборка 19041).

Видео

Терминал Windows: секрет счастливой работы с командной строкой!

Узнайте, как настроить Терминал Windows для рабочего процесса, и просмотрите демоверсии его функций в действии. Посмотрите это видео, а затем изучите документацию для получения дополнительной информации.

WSL2: более быстрый код на подсистема Windows для Linux

Узнайте все о WSL2, новой версии подсистемы Windows для Linux, и изменениях для повышения производительности. Посмотрите это видео, а затем изучите документацию для получения дополнительной информации.

MSIX: пакет классических приложений для Windows 10. Замена устаревших установщиков.

Узнайте о MSIX, формате пакета для установки приложений Windows, в том числе об упаковке существующего кода в Visual Studio, а также о развертывании и распространении приложения. Посмотрите это видео, а затем изучите документацию для получения дополнительной информации.