Обновление Wix успешно, но новый файл отсутствует - PullRequest
2 голосов
/ 17 декабря 2010

Учитывая две версии одного и того же установщика wix, я пытаюсь выполнить незначительное обновление (то же обновление и код продукта, версия увеличена), но возникла проблема. Он включает в себя две функции, к каждой из которых я добавил один файл.

Функции выглядят в основном так:

<Feature Id="Sample1_Feature" Title="Sample1" Level="1" AllowAdvertise="no" Absent="allow" InstallDefault="local">
  <ComponentGroupRef Id="Sample1ProjectOutput"/>
</Feature>

<Feature Id="Sample2_Feature" Title="Sample2" Level="1" AllowAdvertise="no" Absent="allow" InstallDefault="local">
  <ComponentGroupRef Id="Sample2ProjectOutput"/>
</Feature>

При первоначальной установке все файлы в группе компонентов устанавливаются с такими строками в файле журнала:

MSI (s) (AC:D4) [10:26:58:083]: Feature: Sample1_Feature; Installed: Absent;   Request: Local;   Action: Local

и

MSI (s) (AC:D4) [10:26:58:083]: Feature: Sample2_Feature; Installed: Absent;   Request: Local;   Action: Local

Однако во время обновления добавленный файл для Sample2 установлен, а добавленный файл для Sample1 - нет. И вот разница, которую я заметил в файле журнала:

MSI (s) (AC:B8) [10:38:08:682]: Feature: Sample1_Feature; Installed: Advertise;   Request: Reinstall;   Action: Reinstall

и

MSI (s) (AC:B8) [10:38:08:682]: Feature: Sample2_Feature; Installed: Local;   Request: Reinstall;   Action: Reinstall

Я считаю, что отсутствующий файл из Sample1 не установлен, поскольку значение "Installed:" равно Advertise. Что я не понимаю, так это почему Advertise а Sample2 (правильно) Local. Как вы можете видеть выше, ни одна из функций не позволяет размещать рекламу.

Буду признателен за любую помощь в объяснении, почему это может происходить.

Заранее спасибо.

1 Ответ

2 голосов
/ 18 декабря 2010

Взгляните на этот пост от Хита Стюарта. Он объясняет, почему может возникнуть ситуация, аналогичная той, которая у вас есть. Если ваша проблема все еще не может быть сужена на основе этой информации, тем не менее вы можете найти предложение в последнем абзаце полезным (о свойстве MSIENFORCEUPGRADECOMPONENTRULES).

Кроме того, еще один совет Хита о том, как ремонтировать изделия после того, как произошла эта случайная реклама. Надеюсь, это поможет.

...