Delphi выдает на Windows 7 x64? - PullRequest
13 голосов
/ 19 сентября 2009

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

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

Общий вопрос: как кто-то, кто переходит на 64-битные Windows 7, смогу ли я / буду использовать это как основную платформу для разработки Delphi, или мне лучше оставить 32-битную загрузку для Delphi Dev?

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

Ответы [ 7 ]

10 голосов
/ 20 сентября 2009

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

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

6 голосов
/ 08 января 2010

В настоящее время исправление для этого .

5 голосов
/ 19 сентября 2009

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

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

5 голосов
/ 19 сентября 2009

Понятия не имею о 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 ) из 64-битной Windows, которая достаточно близка к реальной 32-битной ОС, и вам не нужно о ней заботиться , если вы не работаете в тесном контакте с нижним уровнем системы.

3 голосов
/ 08 января 2010

Ответы:

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

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

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

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

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

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

2 голосов
/ 13 января 2011

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

НТН. YMMV.


Doug

0 голосов
/ 23 марта 2011

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

...