То, что вы просите сделать, просто невозможно с помощью установщика Windows, за исключением одного неподдерживаемого подрывного хака.
Установите INSTALLDIR
на C:\Progra~1\.....
См., У MSI есть функциональность для обратной совместимости, которая автоматически "исправляет" любые жестко закодированные ссылки от C:\Program Files\
до C:\Program Files (X86)
, когда MSI отмечен как 32-битный. Он не может рассчитать версию короткого имени и перенаправить ее, чтобы мой хак работал. Предполагая, что они не отключили систему коротких имен файлов.
Единственный правильный способ установки на C:\Program Files
- пометить MSI как 64-битный и использовать свойство ProgramFiles64Folder
вместо свойства ProgramFilesFolder
.
Кстати, если ваш начальник не поверит вам, тогда я предлагаю найти нового начальника. Я пишу установщики в течение 16 лет и никогда не позволяю некоторым PHB принимать подобные решения. Я эксперт по установке Windows, а не он.