У меня есть установка InstallShield, которая использует пользовательские действия, которые зависят от Visual C++ Runtime 8.0 sp1. Раньше мне удалось установить среду выполнения, используя модуль слияния, предоставленный Microsoft с помощью Visual Studio. Основываясь на том, как Visual Studio C++ Runtime 8.0 sp1 работает на Vista, время выполнения не может использоваться до последовательности фиксации установки.Как я могу программным образом определить, установлен ли Visual C++ Runtime 8.0?
Это означает, что я должен либо переместить выполнение моих пользовательских действий в последовательность фиксации (нежелательно, так как установка не может быть отменена во время этой последовательности, если что-то пойдет не так) или установите время выполнения Visual C++ до моей установки используя предварительное условие InstallShield.
Я бы предпочел установить Visual C++ Runtime в качестве предварительного условия, но предварительное условие для этого не предусмотрено InstallShield, поэтому мне пришлось написать свой собственный. Мне удалось выяснить, как настроить предварительное условие для установки среды выполнения, но я не знаю, как определить, установлен ли она. Есть ли ключ реестра или версия файла, которую я могу проверить, чтобы определить это?
Для тех, кто пытается обнаружить среду Visual C++ 2010, вы можете найти полезные инструкции здесь: http://blogs.msdn.com/b/astebner/archive/2010/05/05/10008146.aspx – ephere