2014-12-30 4 views
0

Я пытаюсь сделать диалог DemoDatabaseDlg условным, поэтому, если это ПЕРВОЕ время, когда пользователь устанавливает установщик, тогда следует отобразить «DemoDatabaseDlg». Если это НЕ первая установка, пропустите это диалоговое окно и перейдите к следующему диалоговому окну.Инструкция WiX «CDATA [NOT Installed]» не работает

<Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="DemoDatabaseDlg">1</Publish> 

    <Publish Dialog="DemoDatabaseDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg"> 
    <![CDATA[NOT Installed]]> 
    </Publish> 

    <Publish Dialog="DemoDatabaseDlg" Control="Next" Event="NewDialog" Value="PrepareDlg">1</Publish> 
    <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish> 

Однако после первой установки, когда я пытаюсь увеличить номер версии и повторно установить снова, я все еще могу видеть диалоговое окно DemoDatabaseDlg. Как я могу пропустить это диалоговое окно, используя условия CDATA?

+0

Вы также меняете Товарный код? –

+0

FWIW нет такой вещи, как «условия CDAATA». CDATA просто ускользает от текста, который продолжается. В этом случае это даже не нужно, потому что условное выражение NOT Installed не содержит специальных символов, которые требуют экранирования. –

ответ

1

Обычно у вас есть диалог приветствия и диалог обслуживания в последовательности пользовательского интерфейса в качестве первого диалога. Трудно сказать наверняка, не видя остальную часть вашего кода или файла журнала установки, но я предполагаю, что вы делаете крупные обновления и меняете свойство ProductCode с каждой сборкой. В этом случае каждая новая версия еще не установлена ​​с точки зрения MSI.

+0

Я попытался взглянуть на файл журнала, и выяснил, что в файле журнала есть приложение Action, которое возвращает значение 0, даже если предыдущая версия уже установлена ​​на моей машине. Как вы думаете, откуда эта проблема? – Benjamin

+0

Нет. Отправляйте свои журналы с первой и второй инсталляций. –

+0

AppSearch не касается устаревших продуктов. Найдите FindRelatedProducts в своей новой настройке, чтобы узнать, нашел ли он более старую версию. – PhilDW

 Смежные вопросы

  • Нет связанных вопросов^_^