Как найти запись в реестре (по умолчанию) со значением (значение не задано) из WIX?

Как мы можем найти запись реестра (по умолчанию) со значением (значение не задано) из WIX? Я пробовал использовать RegistrySearch без атрибута Name, но он все еще не работает. Любая помощь будет принята с благодарностью.


wix
person Community    schedule 02.12.2009    source источник


Ответы (1)


(value not set) не является реальным значением. Это именно то, что вы видите в regedit, когда значение (Default) для ключа фактически не установлено.

Если вы выполните RegistrySearch поиск значения, которое не задано, или раздела реестра, который не существует, то в обоих случаях свойство установщика Windows не будет установлено. Вы не можете провести различие между ними обоими.

Итак, как проверить, присутствует ли раздел реестра? Самый простой способ - найти другое значение, которое всегда устанавливается при наличии ключа, вместо поиска (Default). Обычно он есть. Если нет, вам придется написать собственное действие, как описано в этот ответ.

person Wim Coenen    schedule 02.12.2009
comment
Спасибо, wcoenen. Можно ли проверить, присутствует ли в реестре папка типа SOFTWARE \ Microsoft? - person ; 03.12.2009
comment
папка реестра == раздел реестра, поэтому мой ответ остается прежним. - person Wim Coenen; 03.12.2009