Как создать 64-битную собственную библиотеку ATL C ++ DLL в Visual Studio 2003? - PullRequest
0 голосов
/ 02 ноября 2009

У меня есть 32-битный ATL C ++ in-proc COM-сервер. Как мне перенести его на 64-битную Windows? Я имею в виду, как заставить VC ++ 7 выдавать 64-битный код? Возможно ли это с Visual Studio 2003?

Ответы [ 3 ]

2 голосов
/ 02 ноября 2009

Вам нужен 64-битный компилятор, который будет долго компилироваться до 64-битного. Версия, которая была поставлена ​​в VS2005, подойдет. Более поздние версии Visual C ++ и Windows SDK имеют более высокие версии компилятора. 64-битная поддержка отключена в стандартных или более низких версиях Visual C ++, но не в свободно доступном Windows SDK. Другие поставщики компиляторов, такие как Intel, имеют свои собственные продукты, которые поддерживают Visual Studio и 64-разрядные.

1 голос
/ 03 ноября 2009

Посмотрите на VSItanium . Из описания:

Плагин VSItanium для Visual Studio .NET 2003 позволяет компилировать проекты Win32 Visual C ++ с несколькими внешними компиляторами, фактически с 64-битным компилятором Microsoft SDK и AMD Opteron, а также компилятором Intel C ++ Itanium.

Относительно выбора компилятора - если переход на более новую версию VS не возможен из-за использования cl 13 (VS 2005 использует cl 14), вы сможете найти cl 13, поддерживающий IA-64 и amd64, в WDK 3790.1830, IIRC. Должен быть старый SDK с 64-битной поддержкой cl 13, но я не знаю, какой именно.

Если ваш проект работает нормально с новыми компиляторами, вы в основном имеете свободный выбор версий WDK и SDK.

1 голос
/ 02 ноября 2009

64-битная поддержка новинка с VS 2005 , или VC ++ 8

...