WiX: incorrect upgrade value
От: serXXIo  
Дата: 06.10.11 15:43
Оценка:
Никто не сталкивался с подобной проблемой?

есть свойство:
    <Property Id="PROP" Value="50">
      <RegistrySearch Id="propRegkey"
                    Type="raw"
                    Root="HKLM"
                    Key="Software\propRegkeyy"
                    Name="propRegKeyName" />
    </Property>


по этому свойству пишется ключ в реестре:

   <Registry Id="propId" Root="HKLM" Key="Software\propRegkeyy" Name="propName" Action="write" Type="string" Value="[PROP]" />


Первый раз(когда ключа еще нет) — записывается дефолтное значение = 50
При апгрейде(когда ключ уже записан в реестре) записывается вот такое значение — "#50"

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

P.S. Wix 2.0
Re: WiX: incorrect upgrade value
От: okman Беларусь https://searchinform.ru/
Дата: 06.10.11 16:35
Оценка:
Здравствуйте, serXXIo.

То, что Вы описываете, — не баг WIX, как могло бы показаться, а стандартное поведение, которое
описано в справочном руководстве (см. WIX Schema Reference, RegistrySearch).
Суть, вкратце, в том, что RegistrySearch не только устанавливает определенное свойство (Property),
но и присваивает ему некоторое значение, которое в специальной сжатой форме хранит type и data
соответствующей записи ключа реестра, в котором выполняется поиск.

RegistrySearch

Type = raw

Sets the raw value from the registry value.
Please note that this value will contain a prefix as follows:

DWORD
Starts with '#' optionally followed by '+' or '-'.

REG_BINARY
Starts with '#x' and the installer converts and saves each hexadecimal digit (nibble) as an ASCII character prefixed by '#x'.

REG_EXPAND_SZ
Starts with '#%'.

REG_MULTI_SZ
Starts with '[~]' and ends with '[~]'.

REG_SZ
No prefix, but if the first character of the registry value is '#', the installer escapes the character by prefixing it with another '#'.

 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.