Сначала зафиксируйте точный текст ошибки
Итак, вечер освобождён, чай заварен, домашние предупреждены о временной утрате кормильца — и тут вместо игры на экране появляется белое окошко: «Запуск программы невозможен, поскольку отсутствует VCRUNTIME140.dll». Занавес. Оркестр исполняет похоронный марш, Steam делает вид, что он здесь вообще ни при чём.
DLL — библиотека с исполняемым кодом, которую загружает игра или связанный с ней компонент. Сообщение о пропавшей DLL вовсе не означает, что следует немедленно разыскать одноимённый файл в интернете и запихнуть его куда-нибудь поглубже. Это как лечить отсутствие бензина установкой чужого бензобака: деталь похожа, но путешествие может закончиться эффектным пожаром.
Безопасный маршрут короток: записать точное имя файла, проверить целостность игры, определить семейство библиотеки и восстановить её из официального источника. После каждого шага запускайте игру снова. Не устраивайте над Windows шаманский обряд из двадцати действий подряд — иначе не узнаете, что помогло, а что подложило мину на будущее.
Какие данные нужно записать
Сделайте снимок экрана или дословно запишите:
- имя DLL;
- весь текст сообщения;
- источник и папку установки игры;
- что произошло перед поломкой: обновление, установка мода, перенос игры или вмешательство антивируса;
- на каком этапе появляется ошибка — при запуске лаунчера, самой игры или после загрузки сохранения.
Источник игры особенно важен. Если официальная копия установлена через Steam, Epic Games Store или магазин издателя, файл можно повторно получить штатным способом. Если библиотека принадлежит изменённой сборке или средству обхода лицензии, восстанавливать её, отключая защиту, небезопасно.
Само название steam_api.dll или steam_api64.dll ещё не доказывает, что файл связан с нелегальной копией: эти библиотеки встречаются и в официальных играх со Steamworks. Для игры из Steam начните с проверки файлов. С библиотеками из неизвестной или изменённой сборки безопасного маршрута нет — используйте официальную версию.
Когда этот гайд не подходит
Материал рассчитан на сообщения «файл не найден», «DLL отсутствует» или «библиотека повреждена». Ошибка 0xc000007b, «точка входа не найдена» и «не является приложением Win32» — другие звери. Они могут указывать на несовместимые версии, неверную архитектуру приложения или повреждение другого компонента, поэтому простая установка одной библиотеки проблему не гарантирует.
Если в журнале Windows некая DLL названа сбойным модулем, это тоже ещё не приговор библиотеке. Запись показывает, где был зафиксирован сбой, но не доказывает, что виноват именно этот файл.
Почему нельзя скачивать отдельную DLL с постороннего сайта
Поиск по имени пропажи немедленно выводит на ярмарку чудес: зелёная кнопка DOWNLOAD, пять звёзд и обещание исправить всё за минуту. Где файл взяли, кто его изменял и к какой версии он относится — тайна, охраняемая лучше кодов ядерного чемоданчика.
Опасностей три.
Во-первых, DLL содержит исполняемый код. Под полезным файлом может скрываться вредоносная программа. Например, создатель DLSS Swapper предупреждал о риске пользовательских DLL, загруженных в репозиторий под видом готового решения.
Во-вторых, одинаковое имя не гарантирует одинаковое содержимое. Игра ждёт определённую версию, набор функций и разрядность, а получает дальнего родственника в чужом пальто.
В-третьих, ручное копирование в System32, SysWOW64 или папку игры маскирует причину и может создать новые конфликты. Не используйте и regsvr32 по совету случайного форумного знахаря: большинство игровых DLL не являются саморегистрируемыми компонентами. Ключ от одной двери не становится универсальным только потому, что им очень уверенно ковыряют замок.
Начните с файлов самой игры
Это самый скучный, штатный и почти оскорбительно разумный метод. Если DLL поставлялась вместе с игрой, проверка вернёт её в подходящей версии и в нужную папку.
Проверка файлов в Steam
Перезапустите компьютер, откройте библиотеку Steam, щёлкните игру правой кнопкой и выберите «Свойства» → «Установленные файлы» → «Проверить целостность файлов игры». Клиент проверит установку и заново загрузит отсутствующие или изменённые файлы. Официальная инструкция Steam предупреждает, что процесс может занять несколько минут.
Учтите: вручную заменённые файлы и некоторые модификации могут быть перезаписаны. Это не жестокость Steam, а смысл проверки. После завершения сразу попробуйте запустить игру.
Проверка файлов в Epic Games Launcher
Откройте «Библиотеку», нажмите три точки возле игры, выберите «Управление» → «Проверить». Epic Games указывает, что проверка восстанавливает повреждённые файлы и не затрагивает сохранения. Порядок действий приведён в официальной инструкции Epic Games.
Когда проверка завершится, выполните контрольный запуск до перехода к другим методам.
Если перед ошибкой устанавливались моды
Отключите модификации через их менеджер или верните чистую конфигурацию способом, предусмотренным авторами мода. Не переносите изменённые DLL обратно до контрольного запуска. Особенно это касается графических инжекторов, переводчиков API и старых приспособлений для геймпадов.
Если чистая официальная версия запускается, причина находится в модификации или её совместимости, а не в системной библиотеке Windows.
Определите нужный компонент по имени DLL
Имя DLL — не заклинание, а дорожный указатель.
VCRUNTIME, MSVCP и MSVCR
VCRUNTIME140.dll, VCRUNTIME140_1.dll и MSVCP140.dll относятся к среде выполнения Microsoft Visual C++. Для них нужен официальный пакет Visual C++ Redistributable поколения v14.
MSVCR100.dll и MSVCP100.dll обычно требуют Visual C++ 2010. Окончания 110 и 120 соответствуют поколениям 2012 и 2013. Не пытайтесь заменить MSVCR100.dll современной VCRUNTIME140.dll: это разные наборы, а не старая и новая фамилии одного лакея.
d3dx, XInput и X3DAudio
d3dx9_43.dll, xinput1_3.dll и x3daudio1_7.dll принадлежат необязательным компонентам старого DirectX SDK. Их отсутствие не означает, что нужно удалить современный DirectX или искать отдельный файл.
DLL с названием игры, движка или лаунчера
UnityPlayer.dll, а также библиотеки с названием игры, движка или лаунчера обычно поставляются самим приложением. Здесь снова нужны проверка файлов и, если она не помогает, поддержка издателя — не археологическая экспедиция по складам интернета.
У некоторых игр установщики зависимостей лежат в папках вроде _CommonRedist или Redist. Запускайте их только из официальной установки игры и не заменяйте файлами из чужих сборок.
Установите официальный Visual C++ Redistributable
Для VCRUNTIME140.dll и MSVCP140.dll используйте актуальный Visual C++ v14 Redistributable непосредственно от Microsoft. Пакет устанавливает полный согласованный набор библиотек, а не один вырванный из него зуб. Ссылки для разных архитектур собраны на официальной странице Visual C++ Redistributable.
Если пакет уже установлен и его установщик предлагает восстановление, выберите Repair, перезагрузите компьютер и проверьте игру.
Почему могут потребоваться x86 и x64
Архитектура пакета должна соответствовать самой игре, а не только Windows. Поэтому 32-битной игре требуется пакет x86 даже на 64-битной Windows. Для 64-битного приложения нужен x64.
Если разрядность неизвестна, сначала проверьте требования игры, страницу поддержки издателя или комплект установщиков в её официальной папке. Не ориентируйтесь только на разрядность операционной системы.
Что делать с библиотеками старых игр
Старые поколения Visual C++ устанавливаются параллельно: современный v14 не заменяет Visual C++ 2010, который может требоваться заслуженной игре времён, когда физика плаща уже считалась технологической революцией.
Для MSVCR100.dll или MSVCP100.dll используйте комплект зависимостей игры либо соответствующий пакет со страницы Microsoft. Visual C++ 2013 и более ранние поколения больше не поддерживаются, хотя официальные установщики некоторых версий ещё доступны. Поэтому никаких «All-in-One Super Mega Runtime Edition» от гражданина с аватаркой аниме-волка.
После установки или восстановления пакета перезагрузите компьютер и снова запустите игру.
Восстановите legacy-библиотеки DirectX
Наличие DirectX 12 в Windows не означает, что в системе установлены все необязательные библиотеки старого SDK. DirectX 12 — не матрёшка, внутри которой сидят абсолютно все компоненты, выпущенные Microsoft с сотворения мира.
Для ошибок с d3dx*, xinput1_3.dll, x3daudio1_7.dll и другими компонентами XInput 1.3 или XAudio 2.7 используйте официальный DirectX End-User Runtime. Он добавляет legacy-компоненты и не меняет встроенную в Windows версию DirectX.
Устанавливайте пакет целиком. Не извлекайте из него отдельные DLL и не раскладывайте их вручную по системным каталогам. После установки выполните контрольный запуск.
Проверьте историю защиты Windows
Если DLL исчезла после обновления или первого запуска, откройте «Безопасность Windows» → «Журнал защиты». Карточку события можно раскрыть и увидеть путь к файлу, тип обнаружения и выполненное действие. Microsoft сообщает, что журнал хранит события две недели, поэтому не откладывайте расследование до следующей геологической эпохи.
Когда не следует восстанавливать файл
Не отключайте Defender и не восстанавливайте объект только потому, что его имя выглядит знакомо. Оставьте файл в карантине, если:
- игра получена из сомнительного источника;
- библиотека относится к обходу лицензии;
- происхождение файла неизвестно;
- путь из карточки события не совпадает с официальной папкой игры;
- издатель не подтверждает безопасность файла.
Добавление всей папки игры в исключения — не решение, а табличка «Хищникам вход свободный».
Как действовать при вероятном ложном срабатывании
Проверьте, что игра установлена из официального магазина, обновите защитные определения и снова получите файл через штатную проверку. Если Defender повторно блокирует свежую официальную копию, обратитесь к издателю. Предположительно ошибочно распознанный файл можно отправить Microsoft на анализ.
Не восстанавливайте объект из карантина до подтверждения его происхождения и безопасности.
Используйте DISM и SFC только для системных DLL Windows
Эти средства нужны, если отсутствует именно защищённая системная DLL или вместе с игрой странно ведёт себя сама Windows. Они не восстанавливают UnityPlayer.dll, Visual C++ Redistributable или библиотеку конкретного мода.
Откройте терминал либо командную строку от имени администратора и сначала выполните:
DISM.exe /Online /Cleanup-Image /RestoreHealth
Дождитесь успешного завершения, затем запустите:
sfc /scannow
Не закрывайте окно до окончания проверки. После неё перезагрузите компьютер. Microsoft рекомендует порядок DISM → SFC: первый инструмент восстанавливает компоненты, которые нужны второму для проверки и ремонта защищённых системных файлов.
Что проверить, если игра всё ещё не запускается
Повторно прочитайте сообщение
Пропавшая DLL могла смениться ошибкой точки входа, 0xc000007b или названием другого компонента — следовательно, изменился и диагноз. Не продолжайте лечить вчерашнюю болезнь.
Проверьте также, запускается ли чистая версия без модов и появляется ли ошибка при открытии самой игры, а не стороннего лаунчера. Не повторяйте установку всех пакетов подряд: зафиксируйте результат каждого шага.
Какие сведения передать поддержке
Подготовьте:
- снимок экрана и точный текст ошибки;
- версию и разрядность Windows;
- магазин, в котором получена игра;
- путь к исполняемому файлу;
- момент появления проблемы и предшествовавшие изменения;
- результаты проверки файлов;
- названия установленных официальных пакетов;
- результаты DISM и SFC, если проверялись системные файлы.
Фраза «не работает, всё перепробовал» технически означает примерно то же, что крик «убивают!» из соседнего района: эмоционально убедительно, практически бесполезно.
Пока локальная установка на ремонте
Если разбираться с Windows сейчас не хочется, временной альтернативой может стать облачный гейминг. Игра запускается на удалённом сервере, поэтому локальной системе обычно не приходится загружать её DLL и устанавливать связанные с ней библиотеки. Доступность конкретной игры и требования к лицензии зависят от сервиса, а для стабильной трансляции понадобится подходящее интернет-соединение.
Главное: восстанавливайте источник, а не отдельную DLL
DLL-ошибки неприятны не сложностью, а тем, что предлагают слишком очевидный неправильный ответ. Видишь отсутствующий файл — хочется принести файл. Не приносите. Восстановите поставившую его игру, официальный пакет Microsoft или системные компоненты Windows.
Так вместо нового сезона сериала «Переустановил всё, стало хуже» наконец появится то, ради чего затевалось предприятие: кнопка «Играть» и её редкое, почти неприличное согласие работать.