Проблемы с Delphi в Windows 7 x64?

Я искал, но я не мог найти прямой ответ на эти вопросы, только бит и куски: если я установлю окна семь x64,
 1 - смогу ли я использовать delphi 2007+, поскольку я привык к тому, чтобы запустить его, код в нем, отладить его, скомпилировать в нем? Я видел проблему отладчика и обходное решение для шестнадцатеричного редактирования.
 2 - будет ли приложение, скомпилированное в этой среде, работать над 32-битными версиями окон?
 3 - будет ли мое приложение, скомпилированное с delphi на 32-битных окнах, работать с этой 64-разрядной версией?

(конечно, все это предполагает "нормальные" приложения, поскольку я не ожидаю, что что-то будет работать, если я буду играть с указателями, ожидающими, что они будут длиной 32 бита, очевидно)

Общий вопрос об этом будет так же, как и тот, кто движется к окнам семь 64 бит, смогу ли я использовать это как свою основную платформу разработки delphi, или мне будет лучше сохранить 32-битную загрузку для delphi dev?

Спасибо всем, кто может дать мне понять об этом.

Ответы

Ответ 1

Как заявил Мейсон Уилер, есть проблема с отладчиком 2007/2009 и 64-битными платформами, но это может быть исправлено.

Я использую D2007 (с этим исправлением) на 64-битной Windows 7 ежедневно, и он отлично работает.

Ответ 3

Не знаю о 64-разрядной версии Windows 7, но я использую Delphi 4, 5, 2007 и 2009 уже почти год на 64-разрядной версии Windows XP, и учитывая, что Microsoft тратит на обратную совместимость, я не вижу почему в Windows 7 все должно быть очень по-разному. Это отвечает на ваш последний вопрос - нет необходимости хранить отдельный раздел. Используйте виртуализацию для работы в 32-битной системе. В Windows 7 AFAIK предлагает вам виртуализованную подсистему Windows XP - бесплатно, но вам может потребоваться загрузить ее отдельно.

Re 2. и 3.: ОС, скомпилированное для приложения, не имеет значения для развертывания, если сама компиляция работает. Я только когда-либо собирал 16-битные Delphi-программы на 32-битных версиях Windows без проблем. Тем не менее, вы должны всегда тестировать чистую установку ваших целевых версий ОС, поскольку ПК-разработчик достаточно отличается от ПК пользователя, чтобы не предполагать, что все будет работать. Это, однако, общая рекомендация и не имеет ничего общего с 64-разрядной ОС.

Ваши программы Delphi будут работать на 32-битном уровне (WOW64 - Windows в Windows 64) для Windows 64 бит, который достаточно близко к настоящую 32-битную ОС, которую вам не нужно заботиться, если вы не будете очень тесно работать с более низким уровнем системы.

Ответ 4

Вчера я работал над Delphi 2007 под 64-битной версией Windows 7, и это было катастрофой. Каждый раз, когда я оставлял программу во время отладки, либо путем выхода из системы в обычном режиме, либо путем остановки отладчика, это привело бы к сбою утверждения, из-за которого я не мог бы выбраться, сбив всю IDE. (Это никогда не происходило под XP.) Очевидно, эмулятор WOW64 не совсем стабилен, как и должен быть...: (

Если вы попытаетесь работать с 64-разрядной версией Windows 7, я настоятельно рекомендую перейти на Delphi 2010, который был специально разработан с учетом соответствия Windows 7. Если это не вариант, то, по крайней мере, установите виртуальную машину с XP на нее для работы вашего разработчика.

Ответ 5

Ответы:

1. Yes - With the workaround for the debugger issue
2. Yes - Delphi 2007 (native) will only build 32 bit applications
3. Yes - Unless it a Device Driver or low-level service

Сначала примените патч, как указано в Блог Olaf. Это исправляет ошибку выхода отладчика.

Во-вторых, установите Режим Windows XP, который является полностью чистой (и законной) 32-битной виртуальной машиной Windows XP.

Скомпилируйте приложение на Windows 7 64bit. Установите на виртуальную машину. Он должен просто работать. Прополощите, намочите и повторите для других приложений, которые вы разрабатываете.

Режим XP доступен для всех владельцев Windows 7 Professional и Ultimate. Не знаю о корпоративных изданиях.

Это то, что я сейчас использую для разработки, поскольку мне приходилось выполнять экстренную операционную систему Macbook Pro

Ответ 6

Я запускаю Delphi 2007 на 64-разрядной версии Windows 7 Professional, и это было хорошо для немного до патча во вторник некоторое время назад. IDE умрет после сброса ошибки отладки (сбой SetThreadContext). Я применил патч, найденный в http://cc.embarcadero.com/item/27521, и больше никаких проблем.

НТН. YMMV.


Дуга

Ответ 7

FYI, я запускаю Delphi 7 на Win7 64-bit. Трюк для запуска этой версии - НЕ устанавливать в папку Program Files (x86) - вместо этого установить на что-то вроде C:\Delphi7. Работая с ним таким образом уже около месяца с довольно тяжелой нагрузкой на разработку, и она отлично работает!