Коротко: .NET Desktop Runtime 8 нужен для запуска Windows-приложений, написанных на .NET 8 с графическим интерфейсом. Обычному пользователю чаще нужен именно Desktop Runtime, а не SDK. Скачивать его нужно только с официального сайта Microsoft.

Что такое .NET Desktop Runtime

.NET Desktop Runtime — это компонент Microsoft, который нужен для запуска некоторых программ на Windows.

Если программа написана на .NET и не содержит Runtime внутри себя, Windows может показать ошибку и попросить установить .NET.

Частые сообщения:
  • To run this application, you must install .NET;
  • You must install or update .NET to run this application;
  • This application requires one of the following versions of .NET;
  • A fatal error occurred. The required library hostfxr.dll could not be found.

Чем отличается .NET Runtime, Desktop Runtime и SDK

У Microsoft есть несколько похожих загрузок, и тут легко запутаться.

.NET Runtime

Нужен для запуска консольных и серверных .NET-приложений.

.NET Desktop Runtime

Нужен для запуска обычных Windows-приложений с интерфейсом: WinForms, WPF и похожих программ.

Обычному пользователю чаще нужен именно он.

.NET SDK

Нужен разработчикам для создания и сборки .NET-приложений. Если вы просто запускаете программу, SDK обычно не нужен.

Какую версию ставить

Если программа просит .NET 8, ставьте .NET Desktop Runtime 8.

Коротко:
  • .NET Desktop Runtime 8 — для обычных Windows-приложений на .NET 8;
  • .NET Runtime 8 — для консольных/серверных приложений;
  • .NET SDK 8 — для разработчиков;
  • ASP.NET Core Runtime 8 — для веб-приложений и серверов.
Если программа прямо пишет “Desktop Runtime”, не ставьте SDK наугад. Ставьте Desktop Runtime.

x64, x86 или ARM64

Для большинства современных ПК и ноутбуков с Windows 10/11 нужен вариант x64.

Коротко:
  • x64 — обычный современный ПК или ноутбук;
  • x86 — 32-битные приложения или старые системы;
  • ARM64 — устройства Windows на ARM.
На 64-битной Windows иногда могут понадобиться и x64, и x86, если программа 32-битная.

Где скачивать .NET Desktop Runtime 8

Скачивать нужно только с официального сайта Microsoft.

Не используйте:
  • сайты с переупакованными установщиками;
  • архивы с DLL;
  • торренты;
  • сборники “все Runtime одним пакетом” от неизвестных авторов;
  • файлообменники;
  • установщики, которые предлагают отключить антивирус.
Если сомневаетесь в источнике, проверьте ссылку и файл.

Инструкции:

Как установить .NET Desktop Runtime 8

Порядок установки:
  1. Откройте официальный сайт Microsoft .NET.
  2. Найдите .NET 8.
  3. Выберите .NET Desktop Runtime.
  4. Скачайте установщик для вашей архитектуры: чаще всего x64.
  5. Запустите установщик.
  6. Подтвердите установку.
  7. Дождитесь завершения.
  8. Перезапустите программу, которая требовала .NET.
Обычно файл называется примерно так:
windowsdesktop-runtime-8.x.x-win-x64.exe
Для x86:
windowsdesktop-runtime-8.x.x-win-x86.exe
Для ARM64:
windowsdesktop-runtime-8.x.x-win-arm64.exe

Нужны ли права администратора

Да, обычно установщик .NET Runtime требует права администратора.

Перед подтверждением UAC проверьте:
  • файл скачан с сайта Microsoft;
  • имя файла похоже на windowsdesktop-runtime;
  • издатель — Microsoft Corporation;
  • файл не лежит в архиве с активатором или сторонним загрузчиком.

Как проверить, установлен ли .NET 8

Откройте PowerShell или Командную строку и выполните:
dotnet --list-runtimes
В выводе ищите строки вида:
Microsoft.NETCore.App 8.x.x
Microsoft.WindowsDesktop.App 8.x.x
Для Desktop Runtime важна строка:
Microsoft.WindowsDesktop.App 8.x.x
Если её нет, значит Desktop Runtime не установлен или установлен не той архитектуры.

Как проверить версию dotnet

Команда:
dotnet --info
Она покажет установленные Runtime, SDK и системную информацию.

Если команда dotnet не найдена, это не всегда проблема. Некоторые приложения могут запускаться через установленный Runtime, но команда может быть недоступна из PATH. Но чаще после нормальной установки dotnet доступен.

Что делать, если программа всё равно не запускается

Проверьте по шагам:
  1. Установлен ли именно Desktop Runtime, а не только .NET Runtime.
  2. Совпадает ли версия: программа просит .NET 8, а не .NET 6 или .NET 7.
  3. Подходит ли архитектура: x64 или x86.
  4. Перезапускали ли вы программу после установки.
  5. Не заблокировал ли файл антивирус.
  6. Не повреждён ли установщик самой программы.
Если программа 32-битная, а вы поставили только x64 Runtime, может понадобиться x86 Desktop Runtime.

Можно ли ставить несколько версий .NET рядом

Да. Разные версии .NET могут стоять рядом.

Например, на одном компьютере могут быть:
  • .NET Desktop Runtime 6;
  • .NET Desktop Runtime 7;
  • .NET Desktop Runtime 8;
  • .NET Runtime 8;
  • .NET SDK 8.
Это нормально. Если программа требует .NET 6, она не всегда запустится только на .NET 8. Ставьте ту версию, которую просит приложение.

Нужно ли удалять старые версии .NET

Без причины лучше не удалять.

Старые программы могут зависеть от старой версии Runtime. Удалите .NET 6 — и какая-нибудь программа перестанет запускаться.

Удалять старые версии стоит только если вы понимаете, зачем это делаете, или если Microsoft/администратор прямо рекомендует это из-за безопасности.

Desktop Runtime или WebView2: это одно и то же?

Нет.

.NET Desktop Runtime нужен для запуска .NET-приложений.

WebView2 Runtime нужен программам, которые используют встроенный браузерный компонент Microsoft Edge WebView2.

Некоторым программам могут быть нужны оба компонента.

Visual C++ и .NET — это одно и то же?

Нет. Это разные компоненты.

Если ошибка связана с VCRUNTIME140.dll или MSVCP140.dll, чаще нужен Microsoft Visual C++ Redistributable.

Инструкция: Microsoft Visual C++ Redistributable 2015–2022.

Если программа просит .NET Runtime или Desktop Runtime — ставьте .NET.

Частые ошибки

Поставили SDK вместо Runtime

SDK обычно включает Runtime, но обычному пользователю он не нужен. Лучше ставить именно Desktop Runtime, если программа просит его.

Поставили обычный .NET Runtime вместо Desktop Runtime

Для Windows-программ с интерфейсом нужен Microsoft.WindowsDesktop.App. Поэтому ставьте Desktop Runtime.

Поставили x64, а программа 32-битная

Некоторым 32-битным программам нужен x86 Runtime даже на 64-битной Windows.

Программа просит .NET 6, а установлен .NET 8

Разные major-версии могут требоваться отдельно. Если программа просит .NET 6, установите .NET 6 Desktop Runtime.

Скачали Runtime с неизвестного сайта

Не надо. Скачивайте только с Microsoft. Если файл скачан с непонятного сайта, удалите его и скачайте заново с официального источника.

Мини-чеклист установки

Перед установкой:
  1. Источник — официальный сайт Microsoft.
  2. Выбран .NET Desktop Runtime, а не случайный SDK.
  3. Версия соответствует требованию программы.
  4. Архитектура выбрана правильно: x64, x86 или ARM64.
  5. Файл подписан Microsoft Corporation.
После установки:
  1. Перезапустите программу.
  2. Если не помогло — проверьте dotnet --list-runtimes.
  3. Убедитесь, что есть Microsoft.WindowsDesktop.App 8.x.x.
  4. При необходимости установите x86 Runtime.
  5. Если ошибка осталась — переустановите проблемную программу.

FAQ

Мне нужен .NET Runtime или .NET Desktop Runtime?

Для обычных Windows-приложений с интерфейсом чаще нужен .NET Desktop Runtime.

Нужно ли ставить SDK?

Если вы не разработчик и не собираете программы из исходников — обычно нет.

Можно ли поставить .NET 8 рядом с .NET 6?

Да. Они могут работать рядом.

Почему программа просит .NET, хотя я уже поставил .NET 8?

Возможно, нужен Desktop Runtime, x86-версия или другая major-версия, например .NET 6.

Нужно ли перезагружать компьютер после установки?

Обычно достаточно перезапустить программу. Но если установщик или Windows просит перезагрузку — лучше перезагрузить.

См. также


Вывод: если программа просит .NET 8 для Windows, чаще всего нужен .NET Desktop Runtime 8 x64. Если приложение старое или 32-битное, может понадобиться x86. SDK обычному пользователю обычно не нужен.