Я думаю, что лучше контролировать это, используя атрибут 'Sequence' элемента Custom .
Если вы откроете выходной MSI с помощью Orca , переключитесь на InstallUISequence или InstallExecuteSequence таблицу и отсортируете записи по столбцу «Sequence», выувидим последовательность выполняемых действий.Таким образом, при планировании вашего пользовательского действия вы можете явно указать последовательность:
<Custom Action="YourAction" ... Sequence="49" />
Более удобный подход - использовать атрибуты до и после, которые являются взаимоисключающими с последовательностью.Просто найдите действие, которое вы хотели бы выполнить до или после, и запланируйте его соответствующим образом:
<Custom Action="YourAction" ... Before="AnotherAction" />
Следует учитывать тот факт, что InstallUISequence может не запускаться (основной пользовательский интерфейс), поэтомуесли вы хотите, чтобы ваше действие выполнялось в любом случае и только один раз, добавьте атрибут Execute='firstSequence'
в определение настраиваемого действия:
<CustomAction Id="YourAction" ... Execute="firstSequence" />
Обязательно изучите wix.chm и MSDN для получения дополнительной информации онестандартные действия.Надеюсь, это поможет.