2016-06-30 6 views
2

мой установщик 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 после распространяемых пакетов Visual C++ 2015

The program can't start because api-ms-win-crt-runtime-l1-1-0.dll is missing from your computer. Try reinstalling the program to fix this problem.

Однако, мое приложение работает отлично на Windows 10 без VCRedist 14, хотя API-мс-беспроигрышная элт-среда-l1-1-0.dll не существует. я не знаю, как & почему: даже Dependency Walker (depends.exe) отображается сообщение об ошибке "Не удается найти API-мс-беспроигрышная элт-среда-l1-1-0.dll"

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

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

+0

У меня также нет этого, кажется, что DLL требуется только для старых версий Windows. Зависимый ходок устарел и не знает об этой DLL. – magicandre1981

ответ

2

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

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