#installation #windows-installer
#установка #windows-установщик
Вопрос:
Мне нужно создать пользовательский установщик, который поддерживает французский, немецкий, испанский, итальянский, польский, русский, английский, китайский (мандаринский алфавит), другие языки, которые будут добавлены для приложения на базе .net.
Этот установщик также должен иметь возможность проверять, установлен Adobe в целевой системе или нет. Если в целевой системе нет Adobe или она имеет более низкую версию, чем требуется, ее следует установить с компакт-диска. если это произойдет, то обойдите этот шаг.
Установщик также должен предложить пользователю перейти в любое место в системе, чтобы выбрать файл, который будет помещен в папку установки.
Установщику также необходимо зарегистрировать эту программу в списке установка и удаление программ.
Существует ли пользовательский установщик, который может выполнять все эти задачи, или мне нужно создать для него приложение с нуля?
Мысли… идеи???
Спасибо за ваше время…
Комментарии:
1. Вы могли бы взглянуть на Wix для создания пользовательского установщика. wix.sourceforge.net
2. похоже, что на сайте нет никакой документации, которую я могу найти. Мне нужно обосновать его полезность, прежде чем я смогу получить разрешение на его загрузку в корпоративной сети .. к сожалению!
3. Это прискорбно. По этой ссылке есть некоторая документация, но wix в целом крайне недокументирован. По сути, это набор инструментов, которые компилируют XML-файл в установщик Windows. С ним довольно сложно работать, но он позволяет создавать невероятно настраиваемые установщики. Если бы я делал то, что, по вашим словам, вы хотите сделать, это, скорее всего, то, что я бы использовал.
4. Взгляните на руководство по WiX . Это может помочь вам более или менее понять, что он делает и как это работает.
Ответ №1:
Краткий ответ: Да, все эти вещи можно выполнить, большинство из них легко.
WiX или NSIS, вероятно, являются двумя вашими лучшими бесплатными вариантами. NSIS использует архитектуру плагинов для большей части своей функциональности, но плагины представляют собой текстовые файлы, поэтому у вас не должно возникнуть проблем с их загрузкой. Однако, если ваша компания «забавно» относится к лицензированию, то заранее проверьте соответствующие лицензии для каждого плагина — большинство из них абсолютно бесплатны для использования, но юридические лица иногда этого не понимают…
Пожалуйста, найдите ниже ссылки на соответствующие разделы документации, чтобы вы могли ее загрузить (кстати, я чувствую вашу боль!)
Языковая поддержка
Смотрите Документы
Разрешить пользователю выбирать файл и копировать его
Вам понадобится плагин InstallOptions. Это позволяет вам создать дополнительную страницу в вашем мастере установки, которая может запрашивать информацию. Он допускает различные элементы управления, одним из которых является элемент управления file Explorer (найдите FileRequest
по ссылке).
Чтобы скопировать файл, вы не можете просто использовать File
инструкцию, поскольку она извлекает и копирует файлы с установочного носителя и не будет действовать на файлы на целевом компьютере.
Вместо этого вам понадобится плагин — например, эта оболочка вокруг WinAPI. В качестве альтернативы используйте инструкцию CopyFiles.
Зарегистрировать программу в разделе Установка и удаление программ
Это стандартно как для WiX, так и для NSI.
Обнаружение установленного Adobe.
NSIS имеет возможность проверять, существуют ли разделы реестра или именованные файлы, которые являются двумя обычными методами обнаружения установленных программ.
Комментарии:
1. WiX также поддерживает локализацию, пользовательские диалоговые окна в пользовательском интерфейсе и поиск связанных приложений через разделы реестра, файловую систему.
2. Я не имел в виду, что WiX не может этого делать. Я просто больше знаком с NSIS, и WiX был рассмотрен в комментариях. На самом деле, все эти вещи — это хлеб с маслом для любой достаточно зрелой технологии установки.
3. Конечно! Вы упомянули WiX, но остальная часть ответа была в основном о NSI. Поэтому я решил добавить комментарий, чтобы дать понять, что у WiX тоже есть эти функции. Я не хотел, чтобы это прозвучало так, как будто ты сказал, что это не так.
4. хорошо, как только у меня появится пользовательский интерфейс, запрашивающий у пользователя местоположение файла. Мне нужно, чтобы этот файл был выбран для перемещения в каталог установки. Как это делается?. Это то, над чем я сейчас пытаюсь работать. Если кто-нибудь из вас знает, что в NSIS .. или если у кого-то есть пример в WIX .. любой из способов подходит для меня на данный момент 🙂
5. Обновленный ответ с двумя решениями.