2015-02-03 3 views
0

Я довольно новыми для Advanced Installer, и я хотел бы иметь в закончить Checkbox установить диалоговое только. Когда пользователь проверяет Checkbox, он должен изменить значение реестра в ключе HKEY_CLASSES_ROOT, и если он отключит Checkbox, он также должен изменить его.Checkbox в Finish Диалог

Как достичь чего-то подобного.

ответ

1

Говоря о пакетах MSI в целом. Все системные изменения, выполненные установкой MSI, выполняются до того, как вы дойдете до . Завершите диалог. Более точно, изменения начинаются с момента ввода последовательности InstallExecute, т. Е. Вы нажимаете кнопку «Установить».

Когда вы видите диалоговое окно Finish, вы уже вернулись в последовательность InstallUI, поэтому установщик не выполняет никаких изменений в системе на этом этапе.

читать - MSI installation actions diagram - article.

Об этом говорится, используя поддержку страницы реестра в Advanced Installer, чтобы создать эту запись, если установлен флажок в поле . Диалог завершения невозможен. Если для этого флажка обязательно, то вам нужно написать свой собственный custom action and execute it when the Finish button is hit.

Моя рекомендация состоит в том, что этот вариант представлен конечному пользователю, прежде чем они попадут в InstallVerifyDlg диалога, то есть перед Установите кнопка удара.

Выполнение этого достаточно просто, все, что вам нужно, это set a condition on the component of that registry entry (после определения его на странице реестра), используя общедоступное свойство, прикрепленное к вашему флажку. Связанный раздел форумов объясняет, как установить условие для установки файла, но то же самое относится к записи в реестре.