Скомпилируйте неуправляемый исполняемый файл для ОБА x86 и x64 - PullRequest
0 голосов
/ 04 июня 2010

Есть ли способ скомпилировать EXE-файл, чтобы он работал как в x86, так и в x64? Примерно так: скомпилировать обе кодовые базы и упаковать их в один исполняемый файл.

Я знаю, что код .NET может работать в режиме "любой процессор", но это не то, что я хочу.

Ответы [ 2 ]

2 голосов

32-разрядный исполняемый файл будет работать на компьютерах с 32-разрядной и 64-разрядной ОС Windows.Единственный способ получить выполнение x64 в 32-битном PE-файле - это использовать недокументированный шлюз , который я весьма сомневаюсь, что кто-либо использует на практике, потому что он сильно зависит от версии(и без документов).

Затем вы снова делаете это так, чтобы 32-разрядный двоичный файл выполнял 64-разрядную версию двоичного файла и завершал работу, если он обнаруживает 64-разрядный ЦП ...

1 голос
/ 04 июня 2010

Вы можете использовать подход Process Explorer.В ваш 32-битный двоичный файл встраивайте 64-битный двоичный файл в качестве ресурса.Если 32-разрядный двоичный файл запущен на 64-разрядном компьютере, извлеките 64-разрядный двоичный файл и запустите его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...