Microsoft Windows Desktop Runtime¶
Microsoft Windows Desktop Runtime — компонент среды выполнения .NET, обеспечивающий запуск настольных приложений, созданных на платформе .NET, в операционных системах Windows. Входит в состав семейства рантаймов .NET Runtime и поставляется компанией Microsoft в виде самостоятельного установщика. Позволяет запускать приложения, собранные под фреймворки Windows Desktop (WPF и Windows Forms), без необходимости устанавливать полноценный пакет SDK.
¶Назначение и место в экосистеме .NET
.NET — это платформа разработки от Microsoft, включающая компиляторы, библиотеки классов и среду выполнения. Начиная с .NET Core 3.0 (2019) и далее в .NET 5/6/7/8/9 среда выполнения была разделена на отдельные компоненты:
- Microsoft.NETCore.App Runtime — базовая среда выполнения для консольных и кросс-платформенных приложений;
- Microsoft.AspNetCore.App Runtime — среда выполнения для веб-приложений на ASP.NET Core;
- Microsoft.WindowsDesktop.App Runtime — среда выполнения для настольных приложений Windows, включающая подсистемы WPF (Windows Presentation Foundation) и Windows Forms.
Именно последний компонент и есть Windows Desktop Runtime. Он расширяет базовую среду выполнения библиотеками и модулями, специфичными для Windows: элементами управления, графическим подсистемой, интеграцией с Win32 API и другими возможностями, необходимыми для GUI-приложений.
¶Состав и архитектура
Установщик Windows Desktop Runtime содержит:
- общий файл
hostfxrи загрузчикhostpolicy, отвечающие за инициализацию приложения; - набор библиотек классов (assembly) в формате DLL, в том числе
PresentationFramework,WindowsBase,System.Windows.Forms,System.Drawingи другие; - среду выполнения CoreCLR с JIT-компилятором;
- библиотеку стандартных классов (BCL).
Поставляется в двух архитектурах — x64 и x86, а также в варианте ARM64 для устройств на базе Qualcomm Snapdragon. Для 32-битных приложений требуется x86-версия, для 64-битных — x64. Существует также версия для операционных систем Windows Server.
¶Установка и версии
Windows Desktop Runtime распространяется бесплатно с официального сайта Microsoft в разделе загрузок .NET. Доступны установщики:
- Runtime Installer (dotnet-runtime-x.y.z-win-x64.exe) — только среда выполнения;
- Hosting Bundle — включает ASP.NET Core Runtime и IIS-модули для размещения веб-приложений;
- SDK — полный пакет для разработчиков, включающий среду выполнения, компиляторы и инструменты сборки.
Версии рантайма соответствуют версиям платформы .NET: например, .NET 6 LTS, .NET 8 LTS (поддерживается до ноября 2026) и .NET 9 (STS). Поддерживаемые версии Windows для последних релизов — Windows 10 версии 1607 и новее, Windows 11, Windows Server 2012 и новее.
Установка выполняется автоматически через Windows Update для систем, где включено обновление компонентов .NET. Администраторы корпоративных сред могут разворачивать рантайм через WSUS, SCCM или Group Policy.
¶Зачем нужен конечному пользователю
Многие настольные приложения для Windows, написанные на C# или Visual Basic, требуют установленного Windows Desktop Runtime. Если на компьютере отсутствует нужная версия, при запуске появляется сообщение вида: «To run this application, you must install .NET Desktop Runtime». Разработчик приложения может распространять его в двух формах:
- framework-dependent — требует предустановленной среды выполнения (уменьшает размер дистрибутива, но требует от пользователя установки рантайма);
- self-contained — включает всю среду выполнения в состав приложения (увеличивает размер дистрибутива, но не требует внешних зависимостей).
¶Отличие от .NET Framework
Windows Desktop Runtime не следует путать с .NET Framework — это разные платформы. .NET Framework 4.x — унаследованная реализация, поставляемая как компонент Windows, с собственной средой выполнения CLR. Windows Desktop Runtime основана на .NET Core и является кросс-платформенной базой (хотя компонент Windows Desktop доступен только в Windows). Приложения, собранные под .NET Framework, не запускаются на Windows Desktop Runtime без пересборки, и наоборот.
¶Системные требования
Для последних версий (.NET 8, .NET 9) минимальные требования:
- процессор: x64 — не менее 1 ГГц, 2 ядра; x86 — 1 ГГц;
- оперативная память: 2 ГБ (для x64), 1 ГБ (для x86);
- свободное место на диске: до 500 МБ;
- установленные обновления Windows: последние пакеты обслуживания.
¶История
До появления .NET Core 3.0 (2019) настольные приложения Windows могли использовать только .NET Framework. С выпуском .NET Core 3.0 Microsoft добавила поддержку WPF и Windows Forms, выделив её в отдельный компонент Windows Desktop Runtime. С переходом на ежегодный цикл выпуска (.NET 5, 2020) платформа объединила линейки Core и Framework в единую ветку .NET, а рантайм продолжил выпускаться в трёх вариантах: базовый, ASP.NET Core и Windows Desktop.
¶Источники
- Документация Microsoft по .NET: learn.microsoft.com/dotnet/core/
- Страница загрузок .NET: dotnet.microsoft.com/download
- Документация по WPF и Windows Forms: learn.microsoft.com/dotnet/desktop/wpf/, learn.microsoft.com/dotnet/desktop/winforms/
