Как у нас может быть один файл MSI с разной конфигурацией для каждого пользователя.
Поэтому, когда я нажимаю его, конфигурация будет соответствовать имени пользователя.
Это для пользовательского служебного приложения.
Я не эксперт в этом, но чтобы направить вас в правильном направлении:
Вам понадобится «файл преобразования» с расширением .mst. Файл MST в основном перезаписывает или устанавливает свойства в файле MSI.
Вам следует ознакомиться с этой статьей, она довольно хорошо объясняет: http://www.frickelsoft.net/blog/?p=240.
Вы можете использовать ORCA (бесплатный инструмент от Microsoft) для создания MST, но также должно быть несколько коммерческих программных продуктов. Вы применяете файл преобразования, используя msiexec
, с /t
переключатель, например msiexec /i your.msi /t transform.mst
.
В чем заключаются различия в конфигурации между каждым пользователем? Это один xml файл с настройками? Некоторые значения реестра? Что-то другое?
Настройка конфигурации на самом деле не является задачей установки MSI, это задача администратора после установки. Я бы не стал использовать MSI для этого, если бы мог. Это медленная и подверженная ошибкам работа. В прошлом я сам писал исполняемые файлы, которые будут выполнять пост-настройку в зависимости от среды, в которой я нахожусь. Обычно такой исполняемый файл берет файл, установленный MSI, и обрабатывает его для каждого отдельного пользователя. Вы можете запустить такой исполняемый файл один раз, используя функцию Microsoft ActiveSetup. Смотрите мой ответ здесь: Пакет MSI для развертывания reg