Установщик Vs. Настольное приложение - PullRequest
3 голосов
/ 30 мая 2010

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

Почему существуют специальные установщики? Служат ли они для каких-либо других целей или задач, которые не могут выполнять настольные приложения?

Ответы [ 5 ]

3 голосов
/ 30 мая 2010

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

  1. Автоматическое удаление - все изменения, добавленные во время установки, могут быть автоматически отменены при удалении

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

  3. Переустановка - если какие-либо из ваших программных файлов будут удалены или повреждены, установщик может переустановить их.

  4. Автоматическая установка - установка продукта без пользовательского интерфейса, а иногда и без инициации установки пользователем (например, происходит при запуске компьютера или при входе пользователя в систему).

  5. Развертывание, групповая конфигурация: для больших развертываний установочные пакеты могут быть развернуты сразу для нескольких пользователей, а обновлениями можно управлять.

  6. Упаковка - обычно обычно упаковывает все файлы в один пакет, обычно сжатый, который затем распаковывается во время установки. Пакет также может иметь цифровую подпись для аутентификации.

Вы могли бы предоставить некоторые или все это в своем приложении, но вы бы переделали большую часть кода, который уже доступен бесплатно. См., Например, AdvancedInstaller , который создает файлы MSI для Windows (доступна бесплатная версия).

Кроме того, существует набор инструментов WiX для создания MSI из описания XML.

2 голосов
/ 30 мая 2010

Обзор технологии установщика Windows

Вы должны были бы принять во внимание огромное количество факторов, если бы написали свой собственный для корпоративной среды.

0 голосов
/ 30 мая 2010

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

0 голосов
/ 30 мая 2010

Вы могли бы выполнить все необходимое для установки приложения, написав свой собственный исполняемый файл. Но почему? Установщики, которые вы можете создать в Visual Studio, довольно гибки в отношении написания ваших собственных пользовательских операций, но они также гарантируют, что все покрыто установкой приложения в Windows. Также предусмотрены механизмы отката и удаления.

Написав свою собственную, если нет особых причин, вы бы использовали кувалду, чтобы сломать орех; Вы также можете пропустить вещи. Мне всегда удобнее устанавливать программное обеспечение с помощью MSI.

0 голосов
/ 30 мая 2010

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

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

...