Ложно-положительный риск : создание нового двоичного файла для каждого пользователя может показаться очень неразумным из-за сканеров вредоносных программ и их способности распознавать «известные» версии двоичных файлов (по хешу) ).
Если вы создадите новый двоичный файл для каждого пользователя, пакет вредоносных программ может неожиданно начать помещать ваши настройки в карантин без какого-либо предупреждения или смысла. Эта проблема больше не является тривиальной, поскольку контроль вредоносных программ повсеместно усилен, а установки, работающие с повышенными правами, являются «основными подозреваемыми для управления рисками».
Цифровые подписи могут помочь, но они являются просто гарантией того, что вы выполнили настройку, а не гарантией того, что в настройке нет ничего вредного. Нет ничего хуже, чем подписанные вредоносные векторы. На самом деле это доказательство того, что вредоносная программа пришла от вас :-). Примечание: некоторые люди даже могут подделать подписанные исполняемые файлы . Сочетание последних двух фактов очень тревожно.
Настройка приложения : Я хотел бы исключить такие функции и детали из настройки и сделать само приложение ответственным за собственную конфигурацию при первом запуске после установки. Я считаю, что это более надежно и легче для отладки.
Пользовательская конфигурация : Вы можете применить пользовательскую информацию о конфигурации во время выполнения с помощью различных механизмов. Вы должны добавить в преобразование , или вы можете создать пакетный файл рядом с настройкой со встроенной этой информацией и передать ее в MSI или setup.exe .
Пакетный файл? : Командная строка msiexec.exe
поддерживает передачу параметров в MSI. Вы можете сгенерировать пакетный файл, который будет запускать установку с такими параметрами, если вы настроите вашу настройку для поддержки этих «входящих» параметров.
msiexec.exe /i myinstaller.msi ADDLOCAL="Program,Dictionaries" SERIALKEY="1234-1234" /qn
Преобразование : Вы также можете создать преобразование, содержащее параметры (преобразование представляет собой крошечный фрагмент MSI с настройками и изменениями исходного MSI):
msiexec.exe /i myinstaller.msi TRANSFORMS="mytransform.mst" /qn
Преобразование будет сложно создать в Linux-системе, поскольку это файлы хранения с COM-структурой, родные только для Windows. Я не уверен, возможно ли это, но возможно.
Некоторые ссылки :