Как кросс-компилировать 64-битную DLL с VS 2005 на 32-битном компьютере? - PullRequest
1 голос
/ 25 июня 2009

Используя Visual Studio 2005, я написал простую DLL на C, которая использует Windows API для отправки дейтаграмм UDP и которая подключена к сторонней программе. На 64-битной машине он вообще не работает, так как в этом случае сторонний код был скомпилирован для 64-битной версии. Поэтому мне нужно отправить две версии одной и той же DLL - одну для 32-битной, другую для 64-битной.

Однако мне не удалось заставить Visual Studio (работающую на 32-битной машине) выплевывать библиотеку DLL, которая не идентична 32-битной версии - кажется, что параметр "machine" в свойствах проекта просто игнорируется , Коллега сказал мне, что VS 2008 просто отказывается от кросс-компиляции в этом сценарии. Неужели это вообще невозможно?

1 Ответ

3 голосов
/ 25 июня 2009

Щелкните правой кнопкой мыши проект в обозревателе решений, затем выберите Свойства / Диспетчер конфигурации / Платформа Active Solution: <New...> / x64 / OK / Закрыть. Затем выберите x64 в Platform, хорошо, и все готово.

...