Пожалуйста, внимательно прочитайте, как я объясню, что я пытаюсь сделать. У меня есть установщик wix, который вызывает пользовательские действия для проверки ввода пользователя. Я хочу, чтобы вызвать следующий диалог, если проверка прошла успешно и не двигаться, если проверка не удаласьWix - Пользовательское действие Код возврата - Обработка
- У меня есть настраиваемое действие
- Обычай действие проверяет имя пользователя и пароль
- Если проверка прошла успешно, настраиваемое действие устанавливает свойство ([CONNECTED] = 1) значение до 1
- Если проверка не удалась, она устанавливает значение свойства в пустую, а затем всплывает окно сообщения, в котором указано неверное значение
- Пользовательское действие (C#) выполняется в моем в следующей кнопке
- Пользовательское действие выполняется нормально, и оно появляется, когда происходит сбой . Вот проблема Если есть сбой, всплывающее окно создается, и мой установщик wix переходит в конец диалога (FINISH), чтобы дать мне возможность выйдите из установки. Или он иногда дает мне следующий диалог, хотя он не прошел. Вот код для выполнения моего действия.
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="[ButtonText_Next]"> <Publish Event="DoAction" Value="MyCustomAction">1</Publish> <Publish Event="NewDialog" Value="CustomizeDlg">CONNECTED= "1"</Publish> </Control>
Мой вопрос в том, почему он не остается в текущем диалоге, если есть ошибка означает, что он не возвращает 1. Она идет в диалоговом окне Готово после того как я нажмите кнопку ОК.
Я пробовал редактировать код несколько раз. Вот мой код. ' <Опубликовать Событие = "DoAction" Value = "MyCustomAction"> 1 <Опубликовать событие = "NewDialog" Value = "CustomizeDlg"> CONNECTED = "1" ' –
Dee
в любое время он возвращает actionresult.failure он идет до конца диалог вместо из оставшегося в этом диалоговом окне – Dee
Иногда у вас есть сбой из-за последовательности диалогов, это не ошибка пользовательского действия. Попробуйте генерировать сообщения журнала с помощью msiexec/i your_package.msi/L * vx your_package.log, чтобы найти более подробную информацию о вашей ошибке. – sumitani