2010-10-28 2 views
1

Я пытаюсь добавить чек в мой установщик, так что, если конкретный раздел реестра отсутствует, он должен потерпеть неудачу. Это примерно то, что я делаю:RegistrySearch не работает в проекте Wix

<Property Id="REGVALUE"> 
    <RegistrySearch Id="regval" Root="HKLM" Key="SOFTWARE\Foo" Type="raw"/> 
</Property> 
<Condition Message="Valid Foo value not present. Found [REGVALUE]"> 
    <![CDATA[REGVALUE = "Bar" OR REMOVE ~= "ALL"]]> 
</Condition> 

Проблема, с которой я сталкиваюсь, заключается в том, что это условие всегда терпит неудачу. Я пробовал запросить разные ключи реестра и независимо от того, что я пытаюсь, я всегда получаю пустое значение. В журнале установки я не вижу никакого доступа к реестру и никаких ошибок, связанных с реестром. Поэтому я немного потерян. Мне что-то не хватает?

ответ

1

Обнаружили проблему. Проблема заключалась в некорректном упорядочении действий в последовательности установки, которая вызвала проверку условий перед запуском запросов реестра.

+2

Убедитесь, что вы также исправили его в последовательности Execute, иначе может произойти сбой во время автоматической установки, поскольку последовательность пользовательского интерфейса не выполняется. –