Wix фрагмента: Я устанавливаю свойство FEATURE_IS_SELECTEDWix, установив пользовательское свойство истины не работаешь
<SetProperty Id="FEATURE_IS_SELECTED" Value="1" After="InstallFiles" Sequence="execute"><![CDATA[&MyFeature=3]]></SetProperty>
затем вызывая настраиваемое действие:
<Custom Action="ConfigureMyXml" Before="InstallFinalize">NOT Installed OR MaintenanceMode="Modify"</Custom>
Пользовательских действия:
public const string IsFeatureSelected = "FEATURE_IS_SELECTED";
[CustomAction]
public static ActionResult ConfigureMyXml(Session session)
{
string value;
MessageBox.Show("I will check if value is set");
if (session.CustomActionData.TryGetValue(IsFeatureSelected, out value))
{
//do sth here
}
return ActionResult.Success;
}
При отладке это действие вызывается, но условие if не соответствует действительности. Почему FEATURE_IS_SELECTED не установлен? и // do sth здесь не выполняется?
Пользовательские действия не должны откладываться для запуска после установки файлов. Ему просто нужно установить After = "InstallFinalize" –