Приложения для песочницы - PullRequest
       0

Приложения для песочницы

0 голосов
/ 25 августа 2010

У меня есть приложение (установлено как сервис), которое имеет 5 разных версий.Для тестирования мне нужно иметь все 5 установленных.В настоящее время я должен удалить приложение и переустановить требуемую версию.

Приложение имеет один exe (в Program Files \ App) вместе с некоторым XML-файлом, содержащим его настройки.Это устанавливается через файл MSI.Каждая версия имеет один и тот же файл \ имя службы и проверяет наличие предыдущих версий перед установкой.

Есть ли какие-либо идеи по поводу запуска всех пяти версий одновременно?

Ответы [ 4 ]

1 голос
/ 27 августа 2010

Прежде всего, я предполагаю, что вы разработчик, а не специалист по обеспечению качества.Для обеспечения качества необходимо использовать виртуальные машины или только 5 отдельных ПК.То, что я описываю, это грязный хак, который может сэкономить вам некоторое время.

Установите версию # 1 на C:\program files\YourApp_1

Запустите services.msc, остановите службу, измените тип запуска наmanual.

Launch regedit.exe.

Перейдите к ключу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services, найдите ключ для вашей службы, переименуйте службу: измените и имя ключа, значение «DisplayName» ичтобы упростить свою жизнь, напишите что-нибудь значимое для значения «Description», например «MyApp 1.0 - это справочная версия».

Если установщик проверяет некоторые другие ключи перед установкой (это может быть, например, в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\YourApp), удалить их.Если вы не знаете эти ключи - используйте SysInternals ProcessMonitor для их получения (установите фильтр на instmsiw.exe или что-то еще, затем запустите установщик, дождитесь сообщения «предварительная версия была найдена», alt-tab для ProcessMonitor, остановитеведение журнала и чтение журнала снизу вверх)

Теперь установите версию №2 на C:\program files\YourApp_2, повторите процесс.

В конце, для переключения версий вам понадобятся толькочтобы запустить services.msc, остановите текущую версию, запустите другую.Или используйте команды командной строки net start / net stop.Или что угодно.

PS Предупреждение Серьезные проблемы могут возникнуть, если вы неправильно измените реестр с помощью редактора реестра или другим способом.Эти проблемы могут потребовать переустановки операционной системы.Майкрософт не может гарантировать, что эти проблемы могут быть решены.Изменяйте реестр на свой страх и риск.

1 голос
/ 25 августа 2010

Используйте виртуальные машины для каждой из ваших 5 разных версий.

VMWare player бесплатный: http://www.vmware.com/products/player/

1 голос
/ 25 августа 2010

Хотя это больше вопрос типа «Северный сбой»:

http://www.microsoft.com/windows/virtual-pc/

Ваш ответ: -)

0 голосов
/ 25 августа 2010

Использование VirtualBox .

Создайте одну тестовую систему, настройте ее, затем клонируйте 5 раз (вам придется использовать vboxmanage) и установите одну версию на каждую изих.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...