Чей это файл и почему его нет
Программы, написанные на C и C++ в среде Microsoft Visual Studio, часто не носят с собой стандартные библиотеки, а рассчитывают найти их в системе. Эти библиотеки ставит распространяемый пакет Visual C++ — Microsoft Visual C++ Redistributable. У каждого выпуска Visual Studio свои файлы с номером в имени: msvcr100.dll — 2010 год, msvcr110.dll — 2012, msvcr120.dll — 2013. Рядом с msvcr120.dll в том же пакете лежит msvcp120.dll, библиотека языка C++, и ошибка про неё лечится тем же способом.
Пакет 2013 года не ставится вместе с Windows и не приходит через Центр обновления. Обычно его устанавливает сама программа, но переносная версия, архив без установщика, неудачная установка или ручная чистка системы оставляют компьютер без него. Microsoft отдельно отмечает, что пакеты 2013 года и более старые устанавливаются рядом с современными и не заменяются ими. Поэтому наличие Visual C++ 2015–2022 в списке программ ничего не говорит о msvcr120.dll.
Была у пакета 2013 года и своя история. В одной из версий обновление для одной разрядности удаляло библиотеки другой: после установки обновления для 32-разрядных программ могли пропасть 64-разрядные файлы и наоборот. Microsoft исправила это отдельным обновлением, которое распространяется только загрузкой. Если программа перестала запускаться после установки другой программы со своим пакетом Visual C++, это одна из возможных причин, и пакет стоит переставить.
