Где устанавливать смешанные 32- и 64-битные пакеты приложений

Я знаю, что в 64-битной Windows 32-битные приложения по умолчанию идут в C:\Program Files (x86), а 64-битные в C:\Program Files.

Но что, если у вас есть более сложный установочный пакет, включающий, скажем, один клиентский компонент (32-разрядный) и один серверный компонент (64-разрядный) и, возможно, несколько вспомогательных инструментов (32-разрядный). Каким должен быть путь установки по умолчанию в этом случае?

Согласно некоторым статьям, смешивание битов не рекомендуется Microsoft и некоторыми установочными фреймворками:

Я не понимаю, почему смешивание их должно быть таким большим запретом, учитывая, насколько хорошо платформа x64 запускает приложения x86 и тем более с управляемым кодом, где одни и те же двоичные файлы могут работать в обоих режимах. В моем случае 75% сопутствующих библиотек совместно используются клиентом и сервером и полностью идентичны, поэтому нет смысла разделять их.

Итак, учитывая это, какое место для установки является предпочтительным для этого сочетания 32- и 64-разрядных приложений? C:\Program Files (x86) или C:\Program Files? На мой взгляд, предпочтительнее 64-битное расположение. Я рассматриваю каталог Program Files (x86) как устаревшую «песочницу» для старых приложений, которые никогда не предназначались для 64-битных приложений. В случае гибридного 32/64-битного приложения существует 64-битная осведомленность, поэтому не должно быть никаких устаревших причин для изолирования 32-битных файлов от 64-битных. Для меня путь без "(x86)" также более привлекателен и указывает на то, что это современное приложение, адаптированное для 64-битной работы (где необходимо).

Кто-нибудь знает о других причинах за или против размещения 32/64-битной смеси исполняемых файлов в 64-битном каталоге при установке как одного приложения в одном пакете установщика?


person Martin Rasmusson    schedule 09.10.2012    source источник
comment
+1 Вы когда-нибудь приходили к выводу по этому поводу?   -  person Martin Ba    schedule 26.09.2014
comment
(Приносим извинения за поздний ответ) В конце концов мы решили просто пойти в хороший каталог - Program Files для всего пакета. Я рассудил, что приложение поддерживает 64-разрядные версии и поэтому не должно находиться в папке legacy-x86-sandbox.   -  person Martin Rasmusson    schedule 15.01.2015


Ответы (1)


Насколько я знаю, единственная причина, по которой он не приветствуется, - это та самая проблема, о которой вы упомянули, куда пойдет его путь установки по умолчанию? Я согласен с вами, если бы был выбран путь по умолчанию, это упростило бы синергию двух типов битов и сделало бы возможными более сложные программы. Надеюсь это поможет! :)

person Sam Denton    schedule 20.05.2014