Я написал файл msi, который предлагает выбор установки «для каждого пользователя» или «для всех» на этапе пользовательского интерфейса, и теперь обнаружил, что установщик не работает в Vista:
- если я просто повторно воспользуюсь установщиком, который работает для XP, Vista вызовет запрос UAC даже для установки «для каждого пользователя», что сделает эту установку бессмысленной.
- если я отключу UAC в бите 3 PID_WORDCOUNT, Vista больше не будет вызывать UAC, поэтому даже если у пользователя будет разрешение на установку в системный реестр (скажем), повышения привилегий не произойдет, поэтому установка терпит неудачу.
Итак: как я могу запретить установщику вызывать UAC, когда он на самом деле не нужен? В качестве альтернативы, как я могу программно запросить UAC, даже если установлен бит 3?