Модули слияния не «устанавливаются», они объединяются с базой данных установщика, и вот что устанавливается. Другими словами, Components / CustomActions, созданные в проекте Basic MSI и созданные в проекте MSM, ведут себя одинаково.
Вы пишете пользовательское действие в проекте MSI или MSM. Разница в том, что первый использует таблицу InstallExecuteSequence, а второй использует таблицу ModuleExecuteSequence. Все остальные правила применяются. Возможно, вы захотите запланировать это после InstallFiles как отложенный без олицетворения (контекст SYstem). Также вы, вероятно, захотите использовать состояние действия компонента в условии, чтобы убедиться, что оно выполняется только при установке файла ключа компонента.
Кроме того, подумайте, нужно ли вам что-либо делать в сценариях отката и удаления. Это и убедитесь, что все, что делает этот EXE, не может быть сделано изначально в MSI. (Шаблоны SelfReg уступают собственным декларативным шаблонам транзакционных MSI.)