2016-09-27 2 views
0

Учитывая следующее ...Wix - Как отличить ключ реестра со значением не по умолчанию из реестра не ключа

<Property Id="TESTSEARCH"> 
    <RegistrySearch Id="LookingForKeyExists" 
        Root="HKLM" 
        Key="Software\Classes\.ext" 
        Type="raw" /> 
</Property> 

... Я могу получить один из трех условий.

  1. Ключ нет
  2. Ключ присутствует, но не установлен
  3. Ключ присутствует и имеет значение

Я хотел бы быть в состоянии сказать, разница между следующий условия.

<Condition Message="The extension .ext is missing"> 
    ??? 
</Condition> 
<Condition Message="The extension .ext has no default value"> 
    ??? 
</Condition> 

Но все, что я смог найти/выяснить, это ИЛИ из двух.

<Condition Message="The extension .ext is either missing or does not have a default value"> 
    TESTSEARCH 
</Condition> 

Можно ли отличить два отдельных условия без написания расширения? Если да, то как?

ответ

1

Я не думаю, что это возможно, и это похоже на ограничение Windows Installer, а не на набор инструментов WiX. This original article on MSDN утверждает, что в явном виде:

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

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