WiX: как сделать свойство System в теге Environment зависимым от области установки (ALLUSERS) - PullRequest
1 голос
/ 02 ноября 2011

Я пишу свой первый установщик WiX, и я хотел бы дать пользователю выбор при установке: установить программу для всех пользователей или только для меня.

Я обнаружил, что

  • есть InstallScopeDlg в wixlib, который предоставляет графический интерфейс для этого
  • magic HKMU в <RegistryValue Root='HKMU'> изменяется на HKLM или HKCU в зависимости от того, какая область была выбрана

Последний бит, который мне нужен, это правильно установить переменные окружения.Environment/@System решает, установлена ​​ли переменная для одного или для всех пользователей.Как сделать свойство System зависимым от выбранной области установки?

1 Ответ

1 голос
/ 02 ноября 2011

Вы можете создать 2 разных компонента, каждый из которых содержит один элемент Environment: один с @System = 'yes', другой с @System = 'no' (или просто опущен). Условия этих компонентов соответственно основаны на свойстве ALLUSERS, так что условия являются взаимоисключающими. Таким образом, только один компонент устанавливается для каждой области, и это приведет к правильной переменной среды на целевом компьютере.

...