Свернуть 64-битные и 32-битные версии приложения в один двоичный файл? - PullRequest
5 голосов
/ 29 апреля 2009

У нас есть приложение, которое мы пытаемся развернуть на 64-битной и 32-битной платформах. Есть ли способ поместить обе скомпилированные версии кода в один и тот же двоичный файл, например, в Apple и NeXT толстые двоичные файлы ?

В идеале мы можем отправить один .exe-файл, который решает, какую версию кода выполнять. Мы ориентируемся на Windows XP и более поздние версии.

Ответы [ 3 ]

8 голосов
/ 29 апреля 2009

Process Explorer (ранее был sysinternals, теперь принадлежит Microsoft) делает это. Это 32-разрядное приложение, которое обнаруживает 64-разрядную среду, записывает другой двоичный файл и удаляет его при выходе. http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx

6 голосов
/ 29 апреля 2009

Один из подходов, возможно, заключается в предоставлении загрузочного приложения, которое определяет архитектуру и выбирает подходящий исполняемый файл для запуска. Так что в основном ярлык или что у вас есть для вашего приложения просто запускает загрузчик, который в свою очередь запускает соответствующее приложение. Это может быть немного сложнее, если ваше приложение является службой Windows.

0 голосов
/ 29 апреля 2009

Самый простой подход - обработать это установщиком - он будет иметь две версии каждого двоичного файла и копировать необходимые версии в зависимости от того, какая системная битность находится на целевой машине.

...