C++
The following components are required to run this program C++ Runtime: как исправить
Если при запуске игры или программы Windows пишет The following components are required to run this program, а дальше упоминается C++ Runtime или Microsoft Visual C++, чаще всего не хватает Visual C++ Redistributable. Скачивать отдельные DLL не нужно. Безопасный путь — поставить официальный пакет с сайта Microsoft
Официальная страница Microsoft:
https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist
Что скачать
На обычном 64-битном Windows-компьютере обычно ставят два пакета:
vc_redist.x64.exe
vc_redist.x86.exe
x64 нужен для 64-битных программ. x86 нужен для 32-битных программ. Даже на 64-битной Windows старая игра или утилита может быть 32-битной, поэтому наличие обоих пакетов — нормальная ситуация
Если у вас ARM-устройство, дополнительно смотрите вариант ARM64, но для большинства домашних компьютеров это не основной сценарий
Порядок действий
- Закройте программу, которая показывает ошибку.
- Скачайте
vc_redist.x64.exeс официальной страницы Microsoft. - Установите пакет.
- Если программа старая или вы не знаете ее архитектуру, установите также
vc_redist.x86.exe. - Перезагрузите компьютер.
- Запустите программу снова.
Если установщик предлагает Repair, выберите восстановление. Это нормально: пакет уже есть, но его можно починить
Как проверить, что пакет установлен
Откройте:
Settings -> Apps -> Installed apps
И найдите строки вроде:
Microsoft Visual C++ 2015-2022 Redistributable (x64)
Microsoft Visual C++ 2015-2022 Redistributable (x86)
Название версии может немного отличаться, потому что Microsoft обновляет поддерживаемые пакеты. Главное — ставить Redistributable с официальной страницы, а не случайную сборку с файлового сайта
Как понять, какой пакет нужен именно вашей программе
Если разработчик программы явно написал x64, ставьте vc_redist.x64.exe. Если написано x86, ставьте vc_redist.x86.exe. Если подсказки нет, на 64-битной Windows практичнее поставить оба пакета: это не конфликт, а нормальная рабочая ситуация
Ориентир простой:
| Ситуация | Что поставить |
|---|---|
| Новая программа, 64-битная Windows | сначала vc_redist.x64.exe |
| Старая игра или старая утилита | добавить vc_redist.x86.exe |
Ошибка осталась после x64 |
поставить x86 и перезагрузить |
| ARM-ноутбук Windows | проверить вариант ARM64 на странице Microsoft |
Если программа лежит в папке Program Files (x86), это часто намекает на 32-битную версию. Но это не стопроцентная диагностика: установщик мог выбрать папку по своим правилам
Если ошибка осталась
Проверьте по шагам:
- программа установлена из официального источника;
- антивирус не удалил часть файлов;
- программа запускается от имени обычного пользователя;
- нет поврежденных модов или плагинов;
- установлены и
x64, иx86пакеты; - после установки была перезагрузка.
Если проблема только у одной конкретной программы, попробуйте переустановить именно ее. Иногда ошибка связана не с Runtime, а с поврежденными файлами приложения
Быстрая самопроверка после исправления
После установки Redistributable не оценивайте результат по списку установленных программ только визуально. Проверьте именно ту программу, которая падала:
- Закройте ее полностью.
- Перезагрузите Windows.
- Запустите программу обычным способом.
- Если ошибка исчезла, ничего больше удалять и «чистить» не нужно.
- Если ошибка изменилась, запишите новый текст: это уже может быть другая зависимость, драйвер, .NET, DirectX или поврежденный файл приложения.
Для разработчика полезная проверка жестче: поставить приложение на чистую виртуальную машину Windows без Visual Studio. Если на чистой системе оно не запускается, значит установщик не приносит нужные зависимости
Чего не делать
Не скачивать DLL вручную
Файлы вроде vcruntime140.dll и msvcp140.dll лучше не скачивать отдельно. Вы можете получить не ту версию, не ту архитектуру или вредный файл
Не удалять все Visual C++ пакеты подряд
На компьютере может быть много Visual C++ Redistributable разных лет. Это нормально: разные программы зависят от разных версий. Массовое удаление может сломать то, что уже работало
Не путать Runtime и компилятор
Visual C++ Redistributable нужен для запуска готовых программ. Для написания C++ кода нужны компилятор, Visual Studio, Build Tools или другая среда
Если вы разработчик
Если такую ошибку видит пользователь вашей программы, проверьте установщик. Он должен либо ставить нужный Visual C++ Redistributable, либо явно объяснять пользователю, какой пакет нужен
Для приложений на MSVC не проверяйте только свой компьютер разработчика: на нем Runtime почти всегда уже установлен вместе с Visual Studio
Что почитать дальше по C++
Если нужен общий маршрут по теме, откройте рубрику C++. Для соседних задач пригодятся эти разборы:
- Microsoft Visual C++ Runtime Library ошибка: как исправить без скачивания DLL
- Microsoft Visual C++ 14.0: что это, зачем нужен и как исправить ошибку установки
- Microsoft Visual C++ Runtime: что это и где скачать безопасно
- Как проверить Visual C++ на Windows 10: runtime, компилятор и тестовый запуск