Я хотел бы создать программу C#, которая создает MSI на основе многих параметров. Например, на основе пользовательских настроек, определенные файлы были бы включены, или набор параметров периода выполнения.
Кто-либо может указать на меня к какой-либо документации, которая могла бы помочь или дать мне общее представление, где я мог бы запустить с чего-то вроде этого?
Если вы действительно хотите сделать это в коде, обратите внимание на Windows Installer API . Однако Wix создал хороший управляемый набор инструментов, который значительно упростит создание MSI с использованием языка XML. Они также заключили многие API-интерфейсы установщика Windows в управляемые оболочки, но, чтобы получить полную мощность установщика Windows, вам нужно ознакомиться с документацией по API.
Я бы хотел проверить WiX . У него довольно крутая кривая обучения, но он будет создавать msi как часть цикла сборки вашего проекта.
Проверить WixSharp - набор библиотек C #, который позволяет выразить вашу установку в коде C #. Затем он преобразуется в файл WiX (XML), который, в свою очередь, компилируется и связывается для создания стандартного файла MSI (установщика Windows).