m00slim25
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору LexVel Цитата: и если сабж не ставит старую с++, значит в этой он уже нашел свое нужное... | Я уже описывал Вам ситуацию, Вы видимо не прочитали внимательно, либо не понимаете как это работает. Установщик vcredist использует банальную проверку версии пакета. Он же, установкой необходимых ключей в реестре, блокирует возможность установки более ранних версий пакета. Сами библиотеки (т.е. бинарный код, содержащийся в этих библиотеках) установщиками пакетов никак не используется. Этот код используется лишь программами, которые были скомпилированы с динамическими ссылками на эти библиотеки. Но вся фишка в том, что в процессе эволюции компиляторов msvc/msvc++ от версии VS2015 до VS2022, функционал библиотек msv*140*.dll неоднократно изменялся, и несколько раз весьма серьёзно. Не все программы используют функции, в работу которых вносились изменения - эти программы с высокой вероятностью продолжат работать стабильно. Но те программы, которые используют такие функции, и не были перекомпилированы для изменённой среды исполнения, будут сбоить (что на самом деле и происходит). Самый оптимальный способ решить такую ситуацию: извлечь необходимые библиотеки из устаревшего пакета, и положить их в папку с бинарником программы. Программы, как правило (это правило можно изменить), сначала ищут динамические библиотеки в папке, откуда был запущен бинарник программы. И только в случае, если они там не обнаружены, отправляются шерстить пути из переменной %PATH%, находят библиотеки, установленные пакетами vcredist, и либо тупо подключают те версии, которые нашли в %windir%\System32, либо те, которые им подсунет диспетчер SxS, если версий таких библиотек в хранилище несколько. Цитата: В некоторых ситуациях это может быть решением. Но далеко не во всех (в индустриально-промышленной среде аналогичного решения вообще не существует). ЗЫ. Вобщем не знаю нафига я настрочил эту портянку - чо та меня притомил этот ликбез | Всего записей: 1041 | Зарегистр. 30-05-2006 | Отправлено: 11:04 26-03-2022 | Исправлено: m00slim25, 11:33 26-03-2022 |
|