Рекомендуемый установщик приложения .NET? - PullRequest
1 голос
/ 24 февраля 2009

Мне нужно создать установку для моего приложения, которая выполняет следующие действия:

  1. Копирует файлы
  2. Записывает настройки реестра
  3. Регистрация службы Windows
  4. Записывает файл XML app.config (на основе предоставленной пользователем информации во время установки - строка подключения)
  5. Выполняет сценарии SQL для удаленной базы данных (информация о соединении получена в # 4)
  6. Устанавливает и регистрирует COM DLL
  7. Добавляет запись в Панель управления> Установка и удаление программ для удаления

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

Я посмотрел на Wix , но обнаружил, что документация и примеры плохо согласуются с последними выпусками.

Я также посмотрел на NSIS , но обнаружил, что поддержка записи XML слишком ограничена (плагин для этого может обрабатывать только строки длиной до 64 байтов).

Первоначально я отмахнулся от встроенного в программу установки VS2005 как неспособного справиться с этими задачами, но я готов пересмотреть после того, как наткнулся на то, что я считал лучшими вариантами.

Есть предложения?

Ответы [ 4 ]

2 голосов
/ 25 февраля 2009

Я все равно рекомендую взглянуть на WiX. Мы используем это, чтобы сделать все, кроме # 6 в этом списке, и пока есть небольшая кривая обучения. Мы использовали WiX v3 почти 3 года, и я не нашел слишком много мест, где документация / учебник настолько неуместны. И обычно там, где он есть, потому что он очистил синтаксис и сделал его лучше.

Кроме того, начиная со следующего выпуска Visual Studio (2010 / Rosario) WiX встраивается непосредственно в Visual Studio, я не уверен, параллельно с текущими проектами установки или полностью их заменяет.

1 голос
/ 25 февраля 2009

Проект установщика Visual Studio может выполнять любой пользовательский код; не понимаю, почему какие-то ваши требования будут проблемой.

0 голосов
/ 29 июня 2017

Вы можете использовать только Visual Studio и Windows без коммерческих инструментов для достижения того, что вам нужно.

Сначала проверьте ответ , чтобы создать один установочный файл.

Затем вы можете изучить, как создать класс Custom Action, который может выполнять реестр, читать / записывать файлы и регистрировать COM-библиотеки отдельно.

0 голосов
/ 25 февраля 2009

Я использовал Visual Studio (2005) и Wise и могу рекомендовать оба варианта. Вы не упомянули, должен ли инструмент быть бесплатным, и если это так, это исключает Wise. Тем не менее, у Wise очень легкая форма обучения, он очень мощный и хорошо документированный. У меня было несколько странных вещей со мной в Visual Studio. Однажды мне пришлось удалить свой проект и начать все сначала (возможно, из-за глупости с моей стороны - я так и не понял), но в целом я использую его пару лет на своей нынешней работе, и он работает для меня.

...