Я пытаюсь собрать установщика с помощью WiX 3.0, и я не уверен в одном. Я хотел бы использовать диалог FeaturesDlg
, чтобы позволить пользователям выбирать функции для установки, но мне нужно уметь условно исключать некоторые функции из списка на основе ранее введенного ввода, предпочтительно из управляемого пользовательского действия.Как условно исключить функции из «FeaturesDlg» в WiX 3.0 из управляемого пользовательского действия (DTF)
Я вижу, что если я установить атрибут Feature
к hidden
в .wxs Display
файл, что он делает то, что я хочу, но я не могу найти способ, чтобы изменить этот атрибут во время выполнения.
Любые указатели были бы замечательными.
Edit:
Я попытался с помощью SQL для обновления базы данных сеанса, но в то время как я могу реально удалить элемент с помощью DELETE FROM Feature WHERE Feature = 'featureId'
, если я пытаюсь использовать UPDATE Feature SET Display=0 WHERE Feature='featureId'
, я получаю сообщение об ошибке UPDATE FAILED
. Если я попытаюсь установить значение Display
на что-либо другое, кроме того, что уже установлено, я получаю эту ошибку.
Удаление функции ПОЧТИ достаточно хорошо, но мне нужно будет вернуться и снова добавить функцию, если пользователь вернется и изменит некоторые входные данные.
Это документированы. Люди будут просто указывать и смеяться, если/когда установщик Windows изменит свою внутреннюю работу и сломает вас. –
Может быть, но работать сейчас и ломать позже лучше, чем вообще не работать в этом случае. Выполнение поиска в Google показало, что кто-то сталкивался с тем же сообщением об ошибке с одинаковыми внутренними столбцами базы данных в 2005 году, поэтому я буду использовать свои шансы, что он не изменится в ближайшее время, если только до тех пор, пока я не найду лучшее решение или Microsoft делает WI более гибким. – Gerald