Как определить, какая версия C++ Redist находится на компьютере

Есть ли в реестре путь, который скажет мне - абсолютно, - какая последняя версия C++ Redistributable установлена ​​для Win 7 и Win 10?

Погуглив вокруг, я могу найти много. из ответы, но они либо старые, они зависят от того, установлена ​​ли Visual Studio (это не будет на машинах, на которые я смотрю), или они не имеют смысла.

Я понимаю, что это вопрос, который я смогу выяснить, просто погуглив, но, похоже, не могу найти правильный ответ. Я с радостью приму любую критику.

@Michael Вот почему мне нужна эта информация: допустим, у моего установщика есть версия с повторным доступом 1, а на целевой машине - версия с повторным доступом 2 (более новая версия). В установщике Windows, когда установщик пытается установить, установщик Windows скажет: "У нас это уже есть" и выдаст разочаровывающую ошибку "этот продукт уже установлен", отменяя всю установку.

Поэтому лучший способ справиться с этим - посмотреть, что установлено на целевой машине. Если версия redist>= версия, которую вы пытаетесь установить, ничего не делайте - пропустите. Если это <версия, которую вы пытаетесь установить, продолжайте и установите новую версию поверх нее.

Этот метод отлично работает с.NET, я подумал, что он будет хорошо работать и с Redist. Имейте в виду, что я не пытаюсь установить один простой MSI. Я устанавливаю метрическую TON MSI, используя загрузчик.

Я хотел бы знать другой способ сделать это. Дело в том, что я могу установить последнюю версию Redist, и она будет работать. Тем не менее, что если я попаду в автобус, и через три года Microsoft выпустит новую версию Redist? Ну, следующий болван должен будет разобраться во всем этом. Я бы предпочел простое "если целевая машина имеет более новую версию, чем та, которая есть в установщике, не устанавливайте Redist", чем постоянно следить за версиями Redist. И для этого мне нужен способ выяснить, какая версия находится на целевой машине.

@drescherjm Я не могу установить распространяемый. Ну, я могу, но если версия, которую я устанавливаю, старше, чем версия, установленная на целевой машине, установщик Windows сходит с ума. Это то, что я пытаюсь остановить. Мои комментарии выше объясняют это подробно.

@ Hans Поверь мне, я бы не хотел зависеть от программы установки Redist. Я не вижу пути, чтобы этого не делать. Я объясняю проблему в комментариях выше.

0 ответов

Другие вопросы по тегам