2013-05-02 11 views
2

У меня есть C# решение, которое включает в себя C++ доступ как COM объект проекта. Я создаю это в VS 2010 и создал установщик Windows для установки программы. Приложение имеет 64 бит и отлично работает на большинстве машин. Тем не менее, я хочу добавить «Visual C++ 2010 Runtime Libraries (x64)» в качестве предварительного условия, поэтому я могу быть уверен, что все необходимое доступно в системе.не в состоянии установить, когда новая версия Необходимые условия присутствуют

Если я делаю изменения, каждый раз, когда я пытаюсь устанавливать на моей тестовой системе, где он работал раньше, я сказал, что Visual C++ должен быть установлен. Я нажимаю кнопку «Установить», говорю «да» UAC и получаю сообщение об ошибке «На компьютере обнаружена более новая версия Microsoft Visual C++ 2010 Redistributable». Затем мне пришло сообщение о том, что «при установке компонентов системы произошла ошибка ... Установка не может продолжаться до тех пор, пока все системные компоненты не будут успешно установлены».

Component Visual C++ 2010 Runtime Libraries (x64) has failed to install with the following error message: 
"Asia" 

The following components failed to install: 
- Visual C++ 2010 Runtime Libraries (x64) 

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

enter image description here

один дополнительный бит информации: чтобы получить файл MSI для работы с установкой 64 битной, мне нужно, чтобы изменить его с Orca, перейти к Binary -> InstallUtil _> и изменить содержимое поля 64-разрядная версия installUtilLib.dll. Поскольку предварительная проверка происходит в exe-файле, перед загрузкой msi я не думаю, что это изменило бы ситуацию, но я подумал, что добавлю его. Если я не сделаю это изменение, программа установки немедленно сработает.

Если кто-нибудь знает, что мне нужно сделать, чтобы либо получить последнюю версию Visual C++, чтобы установить или принять более позднюю версию, удовлетворяющие требования, я был бы весьма признателен за руководство.

В настоящее время тестирования на Windows 7 x64 системе.

ответ

1

шаги, чтобы решить эту проблему, можно найти here и ценности продукта можно найти here.

Ниже приведены основные шаги, которые я последовал:

Редактировать

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

Найти

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

Изменения в

<InstallChecks> 
    <MsiProductCheck Property="VCRedistInstalled" Product="{1D8E6291-B0D5-35EC-8441-6616F567A0F7}"/> 
    </InstallChecks> 
0

РЕШЕНИЕ

Исправление этой проблемы отсутствует, так как это ограничение установки установщика Microsoft при обнаружении более новой версии того же Runtime Библиотеки.

Source : http://micc.mitel.com/