Как установить несколько версий MyProgram (на одном ПК, VS2008)? - PullRequest
1 голос
/ 21 августа 2009

У меня есть большое приложение MDI Suite, которое я написал для нашей компании. Он устанавливается на два сервера Citrix, а затем к нему обращаются сотни терминалов Windows по всему заводу.

Перед установкой обновлений я (единственный разработчик) тестирую свои новые процедуры, пока не убедлюсь, что они будут работать так, как я ожидаю. Обычно это работает, но это беспокоит менеджера группы.

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

Для этого мне нужно было бы дважды установить приложение на компьютеры серверов Citrix, чтобы наши сотрудники могли его протестировать (верно?); однако, когда я пытаюсь снова установить приложение на тот же компьютер (то есть сервер Citrix), Windows говорит, что оно уже установлено.

Установщик VS2008 для установки и развертывания имеет код продукта. Должен ли я просто изменить это? Какие проблемы мне нужно знать? Нужно ли отслеживать два кода продукта (один для тестирования, другой для выпуска)?

Как установить 2 рабочие версии одного и того же приложения на 1 ПК?

Ответы [ 4 ]

3 голосов
/ 21 августа 2009

Самый безопасный способ - создать новый ProductCode, новый UpgradeCode, новый TARGETDIR и убедиться, что нет общих каталогов (кроме системных каталогов). Заставьте Windows Installer думать, что это совершенно другой продукт.

Изменение кода продукта, но НЕ кода обновления может привести к обновлению существующих компонентов. Когда установка запускает действие FindRelatedProducts , она найдет что-либо с соответствующим кодом обновления и попытается обновить соответствующие компоненты.

Я полностью согласен с cutrisk - сначала создайте целую вещь где-нибудь еще (установите выпущенную версию, обновите ее до BETA, откройте для внутреннего тестирования и т. Д.) Затем осторожно сверните для клиентов.

Поверьте мне, вы НЕ хотите, чтобы ваш установщик отключал кого-то, кто использует другие службы, потому что ваша бета-версия "обновляет" какой-то компонент, и вся система падает.

1 голос
/ 21 августа 2009

Я бы дал бете .exe другое имя: app_beta.exe. Вы можете использовать ту же настройку, чтобы развернуть ее. Вы также можете продолжать менять свой код обновления с каждой версией бета-версии или выпуска продукта - для них нормально перекрываться.

продукт: 2.0

бета: 2,1

бета: 2,2

Обновление продукта: 2,3

следующая бета: 2,4

1 голос
/ 21 августа 2009

Так как вы хотите разрешить двойную установку, которая должна работать. Я бы сделал новый «бета» установщик, который может быть нацелен на другой каталог установки, чтобы свести к минимуму кровотечение.

Вот MSDN для изменения кода продукта для получения дополнительной информации.

Другой возможный угол, который может быть намного проще ..... Есть ли тестовый / промежуточный сервер Citrix, на котором вы можете разместить его? Вот как мы выкладываем изменения здесь. Но в конечном итоге это зависит от среды / серверов Citrix в ферме ...

Да, и в отношении отслеживания кода продукта, по моему опыту (правильно или неправильно), это не так важно, как проверка того, что UpgradeCode синхронизирован.

0 голосов
/ 31 августа 2009

InstallShield 2009 и более поздние версии поддерживают «несколько экземпляров»:

т.д .: http://blog.deploymentengineering.com/2008/03/installshield-2009-beta-part-i.html

...