Подтвердить что ты не робот

Предварительное условие для библиотек Runtime Visual С++ 2010 продолжает появляться в созданном установщике VS 2010

Я создал установщик с Visual Studio 2010 Version 10.0.40.219.1 SP1 Rel. Мое приложение построено/скомпилировано для x86 и требует библиотеки времени исполнения VС++. Таким образом, проект установки сконфигурирован с использованием библиотек времени исполнения VС++ в качестве предварительного условия.

Каждый раз, когда я запускаю установщик, я получаю всплывающее окно "Следующие компоненты будут установлены на вашем компьютере". "Visual С++ 2010 Runtime Libraries (x86)". В первый раз он будет установлен как ожидается. Второй и последующие времена он спрашивает меня, нужно ли восстанавливать или удалять VС++ 2010.

Это всплывающее окно должно отображаться только один раз, в первый раз, когда обнаруживается, что VС++ распространяемый не установлен.

Кто-нибудь видел это? Кто-нибудь знает, как я могу это исправить?

Решение:

Ответ, который я принял, дал мне то, что мне нужно для решения проблемы. Вот подробности о том, что я сделал, чтобы исправить это, что было очень просто. Я редактировал файл:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\vcredist_x86\product.xml

В этом файле вы найдете следующее:

<InstallChecks>
    <MsiProductCheck Property="VCRedistInstalled" Product="{6EE91C1A-A2E7-38CD-AEBB-3B900A4D8868}"/>
</InstallChecks>

Выше приведен неверный код продукта. Замените вышеописанный код продукта для распространяемого Visual С++ 2010 SP1 следующим образом:

<InstallChecks>
    <MsiProductCheck Property="VCRedistInstalled" Product="{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}"/>
</InstallChecks>

Ссылка здесь показывает правильные коды продуктов для различных распространенных распространяемых VС++ 2010.

4b9b3361

Ответ 1

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

Решение состоит в том, чтобы создать свое собственное предварительное условие с правильными критериями. Возможно, эта статья поможет: http://blogs.msdn.com/b/astebner/archive/2010/05/05/10008146.aspx

Проекты установки Visual Studio этого не поддерживают. Но это можно сделать, создав необходимые манифесты вручную.

Здесь вы можете найти структуру манифеста: http://msdn.microsoft.com/en-us/library/ms229223(VS.80).aspx

Эти манифесты могут быть сгенерированы автоматически с помощью инструмента Bustrapper Manifest Generator.

После создания манифеста пакета вы можете добавить все эти файлы (включая пакет) в отдельную папку в папке предварительных условий Visual Studio, например:

C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\

Затем вы можете выбрать необходимое условие на странице свойств проекта установки.