Установки в Windows 7 - PullRequest
       45

Установки в Windows 7

0 голосов
/ 12 марта 2011

Мне нужно перенести нашу текущую установку программного обеспечения, чтобы иметь возможность установить ее в Windows 7.

Это приложение MFC в Visual C ++.Установка не является чрезвычайно сложной, но она имеет некоторую сложность.Он должен определить, установлено ли какое-либо другое программное обеспечение ранее для запуска файла msi, и позволить пользователю установить его, если это не так.Есть несколько модулей слияния и вложенных msi, некоторые пользовательские действия (в dll, vbscript и т. Д.).И одним из наших требований является то, что пользователь без прав администратора должен иметь возможность устанавливать программное обеспечение.И желательно без необходимости согласовывать какое-либо сообщение после запуска установки.

Я думаю, что то, как это делается прямо сейчас, немного беспорядок, и я хотел бы не просто мигрировать, а сделать рефакторинг, чтобы сделать вещилучше.Поэтому я хотел бы иметь несколько рекомендаций, веб-сайт с лучшими практиками, несколько книг (желательно что-то актуальное с конкретной информацией об установках в Windows 7).Буду признателен за любую помощь.

Кстати, сейчас мы используем InstallShield, но я бы не отказался перейти на более качественный инструмент, если он есть.

использовал любой пареньInstallShield LE для Visual Studio 2010?Стоит попробовать?

Спасибо,

Хавьер

Ответы [ 2 ]

1 голос
/ 12 марта 2011

NSIS Установщик имеет множество функций, в том числе то, что вы упомянули.

0 голосов
/ 21 октября 2012

Я не думаю, что есть книга, которая рассматривает только установку для Windows 7. Хотя есть статья о том, как написать программу установки.

Лучше начать с Рекомендации по настройке пользовательского интерфейса Microsoft для установки:

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

Если вы делаете только три вещи ...

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

Рекомендации для First Experience , который является первым приложением, такжеСтоит прочитать.
Старая статья Редизайн установщика вашего приложения рассказывает о разделении исполняемых файлов и данных, как для пользователя, так и для компьютера, об общих компонентах и ​​т. д.


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

У вас есть два варианта:

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

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

Смысл в том, чтобы показывать подтверждение UAC только один раз: было бы очень неприятно, если бы каждая из предпосылок показывала свое собственное подтверждение UAC.

...