msi-based installer is a framework of package management for windows, it's just a standard for putting the files and setting configurations, and the windows installer framework manages the format.
Of course, is difficult and time consuming.