Я не могу точно сказать, что вы имеете в виду особенности и установки те же установки, дважды, но:
Вы не можете установить одинаковые настройки MSI дважды. Он уже установлен (ProductCode), поэтому он переходит в режим обслуживания/ремонта. Это может сделать ремонт/переустановку или, если вы создали его для обслуживания функций, тогда Windows снова заметит, что продукт уже установлен, но предлагает стандартное диалоговое окно функций, которое позволяет добавлять функции из настройки, и этот последний режим именно то, что вы получите, если поедете в программы & Особенности и выберите изменение. Другими словами, настоящая настройка обслуживания функций предлагает диалог выбора функций, в основном из «Программы» &. В вашем сценарии с добавлением двух функций вы просто используете «Изменить из программ» &. Не пытайтесь переустановить ту же настройку.
Ваше сообщение относится к компонентам и RemoveFile, и вам определенно не нужно ничего делать. Если вы не используете истинные функции установщика Windows и создали компонентную настройку, где установка компонента основана на условиях, это объясняет, что вы видите. Значения свойств, используемые для ваших условий, не сохраняются, поэтому, когда вы пытаетесь установить ту же самую установку снова, она переходит в режим переустановки обслуживания для текущего установленного продукта, значения свойств пустые, условия ложные, поэтому эти компоненты удаляются.
Сказав все это, вы не разместили свой WiX, и тот факт, что вы пытаетесь установить ту же самую установку дважды, подразумевает, что вы не знакомы с обслуживанием, функциями и компонентами. Таким образом, кажется, что вы должны использовать диалоговое окно WixUI_FeatureTree, группируя свои компоненты в функции, чтобы добиться того, что вы ищете.
Если ваша цель - заменить файлы, которые нуждаются в обновлении, то вы должны посмотреть на элемент WiX MajorUpgrade. Если вы установите MigrateFeatures на yes, тогда обновление приведет к тому, что после обновления будут установлены те же функции. Расписание afterInstallExecute - это, вероятно, то, что вы хотите.Увеличивайте файлы версий файлов, которые хотите обновить, используйте новый ProductCode, увеличивайте ProductVersion в первых трех полях и используйте тот же UpgradeCode. В качестве альтернативы вы можете посмотреть создание патча, файла msp.
Я не хочу идти в режим обслуживания после установки продукта. Вместо этого он всегда должен устанавливаться как первая установка. Как вы сказали, я использую «SelectionTree» для группировки компонентов. <Идентификатор функции = «ProductFeature» Title = «Whole Prodcut» Level = «1»>
Невозможно сделать - вы не знаете, как работает установщик Windows. ProductCode был установлен и повторная установка той же настройки ProductCode не будет установлена, как если бы она была установлена в первый раз. Возможно, вам стоит взглянуть на элемент MajorUpgrade и мигрировать состояния функций. – PhilDW
Вы верны PhilDW. Мы хотим добиться этого. в ProdcutCode. Я планирую удалить ProductCode из реестра во время AppSearch, если установлен alre ady, выполнив поиск ProductName. Таким образом, он всегда будет похож на первую установку. Я удалил диалог manintenance и добавил CDATA (НЕ установленный или установленный или PATCH), чтобы показать все мои диалоговые окна. Таким образом, в первой/второй/третьей установке одной и той же версии сборки отображаются те же диалоговые окна, а также выполняются все определенные пользовательские действия. –