Нет api-ms-win-crt-runtime-l1-1-0.dll в Windows 10 после распространяемых пакетов Visual C ++ 2015

мой установщик WIX определяет, требуется ли установка VCRedist 14 (также известного как распространяемые пакеты Microsoft Visual C ++ 2015), используя api-ms-win-crt-runtime-l1-1-0.dll, потому что без это мое приложение C ++, созданное с помощью VStudio 2015, не запускалось в Windows 7/8 / 8.1 из-за этой известной ошибки:

Программа не может запуститься, потому что на вашем компьютере отсутствует api-ms-win-crt-runtime-l1-1-0.dll. Попробуйте переустановить программу, чтобы решить эту проблему.

Однако мое приложение отлично работает в Windows 10 без VCRedist 14, хотя api-ms-win-crt-runtime-l1-1-0.dll не существует. Я не знаю, как и почему: даже Dependency Walker (depends.exe) отображал ошибку «Не удается найти api-ms-win-crt-runtime-l1-1-0.dll».

В Windows 10, даже если я установил VCRedist 14, api-ms-win-crt-runtime-l1-1-0.dll никогда не копировался в каталог System32. Кто-нибудь знает почему?

Также может кто-нибудь объяснить, как любое приложение C ++, созданное с помощью VS2015, не требует VCRedist 14 в Windows 10?


person Petronius    schedule 30.06.2016    source источник
comment
У меня ее тоже нет, похоже, что DLL требуется только в старых версиях Windows. Обходчик зависимостей устарел и не знает об этой dll.   -  person magicandre1981    schedule 01.07.2016


Ответы (1)


Согласно этой статье https://support.microsoft.com/en-us/kb/2999226 api-ms-win-crt-runtime-l1-1-0.dll является частью операционной системы Windows 10, поэтому только семействам 7 и 8 необходимо применять обновление с этой dll.

Эта dll представляет собой тонкую прокладку обратной совместимости CRT для приложений, скомпилированных для нового Windows (10+) API при работе в более старой системе Windows. Итак, на W10 вашему приложению эта dll не нужна.

person Thinkeye    schedule 09.08.2016