Заметки о выпуске стабильного канала для пакета SDK для приложений Windows 0.8
Стабильный канал предоставляет выпуски пакета SDK для приложений Windows, которые поддерживаются приложениями в рабочих средах. Приложения, использующие стабильный выпуск пакета SDK для приложений Windows, также можно опубликовать в Microsoft Store.
Важные ссылки:
- Если вы хотите обновить существующее приложение с более старой версии пакета SDK для приложений Windows до более новой версии, ознакомьтесь с обновлением существующих проектов до последнего выпуска пакета SDK для приложений Windows.
Последний выпуск стабильного канала:
Скачиваемые файлы пакета SDK для приложений для Windows
Примечание.
Расширения Visual Studio для пакета SDK для приложений Windows (VSIX) больше не распределяются в виде отдельной загрузки. Они доступны в Visual Studio Marketplace в Visual Studio.
Версия 0.8
Последний доступный выпуск происхождения 0.8.x стабильного канала пакета SDK для приложений Windows версии 0.8.12.
Примечание.
Пакет SDK для приложений Windows ранее носил кодовое имя Project Reunion. Некоторые ресурсы ПАКЕТА SDK версии 0.8 и более ранних версий по-прежнему используют имя кода. В некоторых разделах документации по-прежнему используется имя Project Reunion, так как в них описывается существующий ресурс или более ранний выпуск.
Версия 0.8.12
Это выпуск пакета SDK для приложений Windows, содержащий критические исправления ошибок для выпуска 0.8.0.
Примечание.
Для разработчиков C# требуется одна из следующих версий пакета SDK для .NET: 5.0.213, 5.0.407, 6.0.104, 6.0.202 (или более поздней версии). Чтобы обновить версию пакета SDK для .NET, посетите .NET Downloads or update to the latest version of Visual Studio. Без требуемой версии пакета SDK для .NET при обновлении пакета NuGet появится сообщение об ошибке: "Для этой версии WindowsAppSDK требуется WinRT.Runtime.dll версии 1.6 или больше".
Исправления ошибок (0.8.12)
- Исправлена проблема, из-за которой приложения с помощью SwapChainPanel или WebView2 непредсказуемо завершались сбоем из-за нарушения доступа.
Версия 0.8.11
Это выпуск пакета SDK для приложений Windows, содержащий критические исправления ошибок для выпуска 0.8.0.
Примечание.
Для разработчиков C# требуется одна из следующих версий пакета SDK для .NET: 5.0.213, 5.0.407, 6.0.104, 6.0.202 (или более поздней версии). Чтобы обновить версию пакета SDK для .NET, посетите .NET Downloads or update to the latest version of Visual Studio. Без требуемой версии пакета SDK для .NET при обновлении пакета NuGet появится сообщение об ошибке: "Для этой версии WindowsAppSDK требуется WinRT.Runtime.dll версии 1.6 или больше".
Исправления ошибок (0.8.11)
- Исправлена регрессия, из-за которой событие потерянного фокуса срабатывает при выборе текста с помощью мыши.
Версия 0.8.10
Это выпуск пакета SDK для приложений Windows, содержащий критические исправления ошибок для выпуска 0.8.0.
Примечание.
Для разработчиков C# требуется одна из следующих версий пакета SDK для .NET: 5.0.213, 5.0.407, 6.0.104, 6.0.202 (или более поздней версии). Чтобы обновить версию пакета SDK для .NET, посетите .NET Downloads or update to the latest version of Visual Studio. Без требуемой версии пакета SDK для .NET при обновлении пакета NuGet появится сообщение об ошибке: "Для этой версии WindowsAppSDK требуется WinRT.Runtime.dll версии 1.6 или больше".
Исправления ошибок (0.8.10)
- Исправлены проблемы, из-за чего приложения иногда завершают сбой во время операции перетаскивания.
Примечание.
Пакет SDK для приложений Windows 0.8.9 не выпущен. Версия, выпущенная непосредственно после версии 0.8.8, — 0.8.10.
Версия 0.8.8
Это выпуск пакета SDK для приложений Windows, содержащий критические исправления ошибок для выпуска 0.8.0.
Примечание.
Для разработчиков C# требуется одна из следующих версий пакета SDK для .NET (или более поздней версии): 6.0.202, 6.0.104, 5.0.407, 5.0.213. Чтобы обновить версию пакета SDK для .NET, посетите .NET Downloads or update to the latest version of Visual Studio. Без требуемой версии пакета SDK для .NET при обновлении пакета NuGet появится сообщение об ошибке: "Для этой версии WindowsAppSDK требуется WinRT.Runtime.dll версии 1.6 или больше".
Исправления ошибок (0.8.8)
- Исправлены проблемы с вводом сенсорного ввода в TextBox относительно мягкой клавиатуры и общего взаимодействия. Эти проблемы также повлияли на сочетания клавиш. Дополнительные сведения см . в статье о проблеме 6291 на сайте GitHub.
- Исправлена проблема, из-за которой окно приложения иногда отображалось как неактивное при активности.
- Исправлена проблема с производительностью, вызванная запуском UIA (модель автоматизации пользовательского интерфейса) во внешних процессах.
- Исправлена проблема стабильности приложения с вводом пера.
- Исправлена проблема, из-за которой отрисовка значков png в меню резко отложена из-за UIA.
Версия 0.8.7
Это выпуск пакета SDK для приложений Windows, который включает несколько обновлений производительности для приложений C#/.NET. Чтобы обновить эту версию, вам потребуется ссылаться на последнюю версию пакета Windows SDK. Для этого добавьте свойство <WindowsSdkPackageVersion>10.0.<sdk_version>.24</WindowsSdkPackageVersion>
в .csproj
файл с версией ПАКЕТА SDK, которую приложение предназначено для TargetFramework
свойства. Например:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
<WindowsSdkPackageVersion>10.0.19041.24</WindowsSdkPackageVersion>
<PropertyGroup>
...
Эта версия проекции пакета SDK для Windows будет доступна в предстоящем выпуске обслуживания .NET 6. После этого обновления пакета SDK для .NET необходимо удалить <WindowsSdkPackageVersion>
свойство из файла проекта.
Если это свойство не задано, появится сообщение об ошибке: "Error: This version of Project Reunion requires WinRT.Runtime.dll version 1.6 or greater."
Версия 0.8.6
Это выпуск пакета SDK для приложений Windows, который включает несколько улучшений производительности для приложений C#/.NET для выпуска 0.8.0.
Чтобы обновить эту версию пакета SDK для приложений Для Windows, необходимо установить последнее обновление пакета SDK для .NET декабря (см. раздел "Скачать .NET и .NET 5" 10 мая 2022 г.). Если у вас нет минимальной требуемой версии установленного пакета SDK для .NET, появится ошибка. "Error: This version of Project Reunion requires WinRT.Runtime.dll version 1.4 or greater."
Исправления ошибок (0.8.6)
Подробный список улучшений производительности см. в заметках о выпуске C#/WinRT 1.4.1.
Версия 0.8.5
Это выпуск пакета SDK для приложений Windows, который включает более критические исправления ошибок для выпуска 0.8.0.
Исправления ошибок (0.8.5)
- Исправлена проблема, из-за которой приложения WinUI использовали входные данные указателя для сбоя.
- Исправлена проблема, из-за которой кнопки заголовка (min, max, close) не имеют округленных углов в Windows 11.
- Исправлена проблема, из-за которой параметры макета изменения размера не отображались при наведении указателя мыши на кнопку "Развернуть или восстановить" в Windows 11.
- Исправлена проблема, из-за которой возникло исключение сбоя при создании объекта PointCollection . Дополнительные сведения см . в статье 971 на сайте Github.
Ограничения и известные проблемы для версии 0.8 также применяются к версии 0.8.5, если не отмечено в противном случае в разделе ниже.
Версия 0.8.4
Это выпуск пакета SDK для приложений Windows, который включает более критические исправления ошибок для выпуска 0.8.0.
Исправления ошибок (0.8.4)
- Исправления для настраиваемых строк заголовков, чтобы ContentDialog не закрывал его, а кнопки заголовка округляются.
- Исправлена ошибка при обработке изображений при изменении масштаба дисплея.
- Исправлены ошибки с вырезками, при которых пользовательский интерфейс исчезает или обрезается неправильно
Ограничения и известные проблемы для версии 0.8 также применяются к версии 0.8.4, если не отмечено в противном случае в разделе ниже.
Версия 0.8.3
Это выпуск пакета SDK для приложений Windows, который включает более критические исправления ошибок для выпуска 0.8.0.
Исправления ошибок (0.8.3)
Фокус клавиатуры был потерян, когда окно было свернуто, а затем восстановлено, требуя щелчка мыши для восстановления фокуса.
Ограничения и известные проблемы для версии 0.8 также применяются к версии 0.8.3, если не отмечено в противном случае в разделе ниже.
Версия 0.8.2
Это выпуск пакета SDK для приложений Windows, который включает более критические исправления ошибок для выпуска 0.8.0.
Исправления ошибок (0.8.2)
- Пакет SDK для приложений Windows и WinUI 3 теперь поддерживаются в Visual Studio 2022 preview 2 и более поздних версий.
- Для приложений .NET при передаче массива перечислений может возникать следующая ошибка:
Object contains non-primitive or non-blittable data.
- Запись с помощью панели рукописного ввода внутри текстового поля приводит к сбою
- Значки и изображения всегда загружаются в их 100 % масштабируемого значения, а не на основе значения масштабирования монитора.
- Сборка мусора EventSource<T> приводит к последующему сбою отмены подписки обработчиков (дополнительные сведения см. в статье о проблеме GitHub).
- Исправление безопасности: дополнительные сведения см. в разделе CVE-2021-34533 .
- SwapChainPanel.CompositionScaleChanged иногда возвращает неверные значения CompositionScale после изменения шкалы отображения
Ограничения и известные проблемы для версии 0.8 также применяются к версии 0.8.2, если не отмечено в противном случае в приведенном ниже разделе.
Версия 0.8.1
Это выпуск пакета SDK для приложений Windows, содержащий несколько критически важных исправлений для выпуска 0.8.0.
Исправления ошибок (0.8.1)
- Пакет SDK для приложений Windows не может выполняться в последней сборке программы предварительной оценки Windows
- Сбой в EditableComboBox при вводе значения, которое не отображается в раскрывающемся списке
- WebView2 не позволяет пользователю выходить на вкладку после получения фокуса
- Полное определение пространства имен Windows.Foundation.Metadata.DefaultOverload в созданном коде WinUI, чтобы избежать неоднозначности пространства имен
- Исправлена ошибка #5108.
- Исправление безопасности— дополнительные сведения см. в разделе CVE-2021-34489 .
Ограничения и известные проблемы для версии 0.8 также применяются к версии 0.8.1, если не отмечено в противном случае в разделе ниже.
Стабильная версия 0.8.0
Новые функции и обновления
Этот выпуск поддерживает все функции стабильного канала.
WinUI 3:
Этот выпуск включает множество исправлений ошибок и улучшенную стабилизацию в WinUI 3. Это все новые изменения в WinUI 3 с момента выпуска WinUI 3 — Project Reunion 0.5:
Элемент управления Pivot был добавлен обратно и теперь можно использовать в любом приложении WinUI 3.
Все исправления ошибок из Project Reunion версии 0.5.5, v0.5.6 и v0.5.7 включены в этот выпуск.
Новые исправления ошибок, включая следующие:
- Щелчок правой кнопкой мыши в TextBox приводит к аварийному завершению приложения.
- NavigationView вызывает сбой в UWP при использовании предварительной версии Reunion 0.5.
- ProgressBar не показывает различие между параметром паузы и ошибки
- Сбой в RichEditBox при копировании, вставке и изменении стиля текста
- Кнопки заголовка окна неуместны, если SetTitleBar не задан или null
Полный список ошибок, устраненных в этом выпуске, см . в репозитории GitHub.
ColorHelper.ToDisplayName
API больше недоступен.Были удалены следующие типы:
Microsoft.Graphics.IGeometrySource2D
Microsoft.Graphics.IGeometrySource2DInterop
Взамен используйте
Windows.Graphics.IGeometrySource2D
иWindows.Graphics.IGeometrySource2DInterop
.Все типы в пространстве имен были перемещены
Microsoft.UI.Dispatching
вMicrosoft.System
пространство имен, включая класс DispatcherQueue.Свойство
AcrylicBrush.BackgroundSource
было удалено, так какHostBackdrop
не поддерживаетсяBackgroundSource
в WinUI 3.
Дополнительные сведения о WinUI см. в статье WinUI.
Чтобы просмотреть элементы управления и функции WinUI 3 в действии, можно клонировать и создать приложение коллекции WinUI 3 из GitHub или скачать приложение из Microsoft Store.
Чтобы приступить к разработке с помощью WinUI, ознакомьтесь со следующими статьями:
- Шаблоны WinUI 3 в Visual Studio
- Создание первого проекта WinUI 3 (пакет SDK для приложений Windows)
- Создание приложения C# .NET с использованием WinUI 3 и возможностей взаимодействия Win32
- Справочник по API WinUI 3
DWriteCore:
Этот выпуск DWriteCore включает следующие новые и обновленные функции. DWriteCore представлен и описан в обзоре DWriteCore.
- DWriteCore теперь поддерживает подчеркивание— см. раздел IDWriteTextLayout::GetUnderline и IDWriteTextLayout::SetUnderline.
- Поддержка забастовки— см. в разделе IDWriteTextLayout::GetStrikethrough и IDWriteTextLayout::SetStrikethrough.
- Поддержка вертикального текста с помощью IDWriteTextLayout см. в разделе "Вертикальный текст".
- Реализованы все методы интерфейсов IDWriteTextAnalyzer и IDWriteTextAnalyzer1.
- Бесплатная функция DWriteCoreCreateFactory создает объект фабрики, используемый для последующего создания отдельных объектов DWriteCore.
Примечание.
DWriteCoreCreateFactory функционально совпадает с функцией DWriteCreateFactory, экспортируемой системной версией DirectWrite. Функция DWriteCore имеет другое имя, чтобы избежать неоднозначности в том случае, если вы связываете оба DWriteCore.lib
и DWrite.lib
.
Справочник по API DWriteCore и DirectWrite см . в справочнике по API DWriteCore и справочнике по API DirectWrite.
MRTCore:
- Действие сборки для ресурсов автоматически устанавливается при добавлении ресурса в проект, что снижает потребность в настройке проекта вручную.
Ограничения
Этот выпуск в настоящее время не поддерживается в канале разработки программы предварительной оценки Windows. Это исправлено в версии 0.8.1.
Классические приложения (C# или C++ desktop): этот выпуск поддерживается только в классических приложениях (C++ или C#), которые упаковываются с помощью MSIX. Чтобы использовать пакет SDK для приложений Windows в распакованных классических приложениях, необходимо использовать экспериментальный канал выпуска.
Внимание
Если вы работаете с приложением UWP, перейдите к разделу "Миграция из UWP" в пакет SDK для приложений Windows.
Известные проблемы
Для инструментов WinUI 3, таких как динамическое визуальное дерево, обозреватель динамических свойств и Горячая перезагрузка в версии 0.8 и более поздних версий, требуется Visual Studio 2019 16.11 Preview 3 и более поздних версий.
Приложения, использующие WinUI 3 и пакет SDK для приложений Windows 0.8, не могут использовать библиотеки классов, использующие Project Reunion 0.5. Обновите библиотеки классов, чтобы использовать пакет SDK для приложений Windows 0.8.
Приложения .NET должны быть предназначены для сборки 18362 или более поздней версии: для TFM необходимо установить значение net6.0-windows10.0.0.18362 или более поздней версии, а для проекта упаковки должно быть установлено значение 18362 или более поздней версии. Дополнительные сведения см. в статье о проблеме GitHub #921.
При частом переключении между светлым и темным режимом может возникнуть сбой.
Для приложений .NET при передаче массива перечислений может возникнуть следующая ошибка:
Object contains non-primitive or non-blittable data.
это исправлено в версии 0.8.2.В настоящее время для приложений .NET нет способа отказаться от индексирования изображения в качестве ресурса приложения с помощью пользовательского интерфейса Visual Studio. Чтобы обойти эту проблему, добавьте directory.Build.targets (см. статью "Настройка сборки — Visual Studio для инструкций") в проект и удалите образы следующим образом:
Чтобы удалить определенные изображения (обратите внимание, что требуется относительный путь):
<Project> <ItemGroup> <Content Remove="..\Bitmap1.bmp" /> </ItemGroup> </Project>
- Удаление изображений на основе метаданных:
<Project> <ItemGroup> <Content Remove="@(None->WithMetadataValue('Pack','true'))" /> </ItemGroup> </Project>
Исправление этой проблемы планируется для предстоящего выпуска . На этом этапе описанные выше обходные пути больше не потребуются.
См. также
- Последние заметки о выпуске канала предварительной версии для пакета SDK для приложений Windows
- Последние заметки о выпуске экспериментального канала для пакета SDK для приложений Windows
- Установка инструментов для Windows App SDK
- Создание первого проекта WinUI 3 (пакет SDK для приложений Windows)
- Использование пакета Windows App SDK в существующем проекте
- Общие сведения о развертывании
Windows developer