Къде да инсталирате смесени 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