|
|
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Добрый день! До недавнего времени работал со студией Embarcadero XE5, десктопные 32-битные приложения на Delphi. Руководство поставило задачу для перехода на 64-битную версию нашего АРМа. Решил заодно обновить студию до 10.1 Berlin. Поставил студию, компоненты стали ровно (devExpress 16, DOA, FR5 Full Source). Но при компиляции не находит родные пакеты (начал с designide и далее почти все dcl-ные). Нашел только для Win32, для 64-битных нету. Кто с таким сталкивался, буду признателен за любой практический совет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 09:09 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Создать новый 64-битный проект и подсмотреть настройки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 09:15 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
dcl пакеты бывают только 32-битные, т.к. сама IDE 32-битная ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 09:37 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
разносите свои компоненты на два пакета: dcl и run-time. первый может быть только 32 битным, а run-time компилируйте под 32 и 64 бита ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 09:39 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
b0rk, тут как раз проблема и вылезла с DOA-шными компонентами на 64-битной платформе. Не видит Dialogs и еще несколько базовых модулей... Пути проверил, вроде все норм ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 09:55 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Начальство поставило задачу для перехода на 64-битную версию нашего АРМаЧем мотивировало ? Модой на вейп и гироскутеры ? :) Для сраного АРМ-а 64 нафиг не упало. Там нет задач для 64. А вот гимор с 64 будет непременно. Уже есть. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:07 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Чем мотивировало ? Модой на вейп и гироскутеры ? :) Ну типа того)) Для сраного АРМ-а 64 нафиг не упало. Там нет задач для 64. А вот гимор с 64 будет непременно. Уже есть. :) Ну как сказать. Есть формы с гридами в которых по 300к+ записей (бывает и больше ляма) Вот и хочется проверить как на 64-битной будет работать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:16 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
L_argoНачальство поставило задачу для перехода на 64-битную версию нашего АРМаЧем мотивировало ? Модой на вейп и гироскутеры ? :) Для сраного АРМ-а 64 нафиг не упало. Там нет задач для 64. А вот гимор с 64 будет непременно. Уже есть. :) Блин, человек же написал: Руководство поставило задачу для перехода на 64-битную версию нашего АРМа. Если руководство готово за это платить (может заказчик очень сильно захотел), то почему бы и нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:17 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
b0rkL_argoпропущено... Чем мотивировало ? Модой на вейп и гироскутеры ? :) Для сраного АРМ-а 64 нафиг не упало. Там нет задач для 64. А вот гимор с 64 будет непременно. Уже есть. :) Блин, человек же написал: Руководство поставило задачу для перехода на 64-битную версию нашего АРМа. Если руководство готово за это платить (может заказчик очень сильно захотел), то почему бы и нет? после вот этого Леонов ЮрийЕсть формы с гридами в которых по 300к+ записей (бывает и больше ляма) уже всё ясно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:19 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов ЮрийНу как сказать. Есть формы с гридами в которых по 300к+ записей (бывает и больше ляма) Вот и хочется проверить как на 64-битной будет работать быстрее работать точно не будет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:20 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
defecator, ну по крайней мере есть надежда что не будет вылетать out of memory ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:35 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов Юрийdefecator, ну по крайней мере есть надежда что не будет вылетать out of memory не грузи миллионы записей в гриды, и вылетать не будет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:46 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов Юрийdefecator, ну по крайней мере есть надежда что не будет вылетать out of memory Вы бы лучше поработали над тем, чтобы избежать 300+ тысяч записей в сетке - пользы намного больше будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:46 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов Юрийну по крайней мере есть надежда что не будет вылетать out of memoryУ вас вылетает ? Если да, то откуда Вы уверены, что это именно из-за х32 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:47 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
DarkMasterВы бы лучше поработали над тем, чтобы избежать 300+ тысяч записей в сетке - пользы намного больше будет. Эти вопросы уже решены. Не особо нравится механизм, но работает. Вылет бывает если юзверь переходит на последнюю запись в выборке при 300к+ записей. В принципе и это заглушками обрезается, но все таки... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:52 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
L_argoЛеонов Юрийну по крайней мере есть надежда что не будет вылетать out of memoryУ вас вылетает ? Если да, то откуда Вы уверены, что это именно из-за х32 ? Я еще не могу скомпилить проект на 64-х, откуда я знаю, будет оно вылетать или нет)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:53 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов ЮрийL_argoпропущено... У вас вылетает ? Если да, то откуда Вы уверены, что это именно из-за х32 ? Я еще не могу скомпилить проект на 64-х, откуда я знаю, будет оно вылетать или нет)) ты не хозяин в своём коде, что ли ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:54 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов ЮрийDarkMasterВы бы лучше поработали над тем, чтобы избежать 300+ тысяч записей в сетке - пользы намного больше будет. Эти вопросы уже решены. Не особо нравится механизм, но работает. Вылет бывает если юзверь переходит на последнюю запись в выборке при 300к+ записей. В принципе и это заглушками обрезается, но все таки... какие вопросы решены, если даже тут написано, что юзер имеет возможность 300к+ загрузить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 10:55 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
defecator, в GridMode режиме DataSet открывает набор (не все записи а с подтяжкой по необходимости) а в гриде отображается максимум 500 записей. Но при переходе на последнюю запись DataSet`а вылетает Out of memory. Что тут непонятного? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:01 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов ЮрийНу как сказать. Есть формы с гридами в которых по 300к+ записей (бывает и больше ляма) миллион - то фигня, вот когда будет 2-3 миллиарда, стоит задуматься ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:03 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов ЮрийВылет бывает если юзверь переходит на последнюю запись в выборке при 300к+ записей. зачем пользователю выборка всех 300+ тыс записей на клиент О_о мне кажется, архитектура (внутренний дизайн) приложения не совсем правильный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:04 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов Юрийdefecator, в GridMode режиме DataSet открывает набор (не все записи а с подтяжкой по необходимости) а в гриде отображается максимум 500 записей. Но при переходе на последнюю запись DataSet`а вылетает Out of memory. Что тут непонятного? ну так правильно, чтобы перейти "на последнюю запись", придётся загрузить предыдущие 300 тыщ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:07 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
У всех дополнительных сторонних компонент должны быть разнесены dcu файлы для 32-bit и 64-bit в разные папки и прописаны эти соответствующие папки в разных конфигурациях Tools/Options/Delphi Options/Library/ Я правильно понимаю? Потому что я вижу, что некоторые "самоустанавливающиеся" (имеющие собственный инсталлятор) компоненты прописывают разные пути к dcu-файлам для 32-bit и 64-bit. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:13 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов Юрийdefecator, ну по крайней мере есть надежда что не будет вылетать out of memory И не надейся. Ищи проблему в коде. Скорее всего, ты много ресурсов забирает и не освобождаешь вовремя. Смотри события сетки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:14 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов ЮрийЕсть формы с гридами в которых по 300к+ записей (бывает и больше ляма) Если читать и осмысливать каждую строку лишь по секунде круглосуточно, то на это уйдет 3,5 дня. Есть смысл изменить архитектуру или вовсе сменить и уйти в OLAP. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:18 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
X11Леонов Юрийdefecator, ну по крайней мере есть надежда что не будет вылетать out of memory И не надейся. Ищи проблему в коде. Скорее всего, ты много ресурсов забирает и не освобождаешь вовремя. Смотри события сетки. Та ну, сетка тут последнее, на что нужно смотреть. Если я в DataSet напихаю 100500 записей без привязки к сетке - будет тот же гарантированный вылет. Тут накладывать доп. условия выборки и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:22 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
DarkMasterсетка тут последнее, на что нужно смотретьувы не всегда. если делать скажем гридом экспорт в эксель то х64 очень может понадобиться DarkMasterЕсли я в DataSet напихаю 100500 записей без привязки к сетке - будет тот же гарантированный вылетстрого говоря от размера записи зависит. скажем есть у меня датасет о ~180 полях и повязанный на него грид с ~160 столбцами в контроллере и несколько сотен тысяч записей вполне прокачивает. а вот экспортнуть не может уже при десятках тысяч записей, налажали ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:32 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
DarkMasterТа ну, сетка тут последнее, на что нужно смотреть. 1. В сетке есть события. 2. В самом НД могут быть calc поля. В общем, гадать можно долго. Но у меня в сравнительно небольшом приложении тоже вываливалось сообщение о нехватке памяти. А потом оказалось, что я забыл удалять объект. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 11:35 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
vavanувы не всегда. если делать скажем гридом экспорт в эксель то х64 очень может понадобиться DarkMasterа есть еще экспорт в html, xml; всякие монстры типа TWebBrowser, которые память освобождают через два раза на третий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 12:03 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Ребята, всё это конечно хорошо, но постановка вопроса была о настройках 64-битной платформы. Все остальные вопросы мной уже задавались в других ветках и замусолены до сальных пятен. Я сам знаю какие есть косяки в проекте, мне самому не понятно зачем пользователю показывать такой объем... Но стоит дебильная задача "а вот надо шоб було". Устал сильно, не добивайте меня хоть вы совсем ногами... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 12:03 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
X11У всех дополнительных сторонних компонент должны быть разнесены dcu файлы для 32-bit и 64-bit в разные папки и прописаны эти соответствующие папки в разных конфигурациях Tools/Options/Delphi Options/Library/ Я правильно понимаю? Потому что я вижу, что некоторые "самоустанавливающиеся" (имеющие собственный инсталлятор) компоненты прописывают разные пути к dcu-файлам для 32-bit и 64-bit. Я тоже так понимаю, вроде и пути все правильные, но что-то не срастается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 12:09 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Ну значит более конкретные сообщения выкладывай. Больше инфы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 12:20 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов ЮрийНе видит Dialogs и еще несколько базовых модулей... Пути проверил, вроде все норм ProcMon тебе в руки. Смотри, в каких путях среда ищет модуль (и с каким именем), и сравнивай настройки Win32 и Win64. И, кстати, файл проекта рекомендую сделать с нуля, дабы среда настроила все умолчания, и перетащить настройки из старого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 12:33 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Реальный затык (см. изображение) при компиляции проекта на 64-битной платформе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 12:33 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
на 32-битной все нормально проходит, ругается на модуль из пакета Doa-шных компонент ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 12:34 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов Юрий, + проверь настройку проекта "Unit scope names" - VCL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 12:34 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 12:54 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Леонов Юрий, а почему переходите на берлин, а не на токио? В токио VCL работает отлично, плюс апдейты и фиксы для берлина вряд ли будут еще выпускать, а вот для токио будут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 13:00 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
твой косяк не из-за 64х битности, а из-за того, что библиотек среда не видит. что делать - уже сказали - либо разбираться со scope names, вызывается: project - options - delphi compiler - unit scope names. проще всего создать новый 64х проект и этот самый scope names оттуда скопировать. проблемы собственно с 64х будут позже ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 13:38 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
makhaon, авторлибо разбираться со scope names либо назвать библиотеки полностью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 14:00 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
Cobalt747Леонов Юрий, + проверь настройку проекта "Unit scope names" - VCL таки да, помогло)) Глаз замылился походу... Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 14:25 |
|
||
|
Перевод проекта на 64-битную платформу
|
|||
|---|---|---|---|
|
#18+
к слову, настоятельно рекомендую добавить модуль в проект: http://programmingmindstream.blogspot.com/2017/01/1333-64-integer.html помогает локализовать потенциальные проблемы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2018, 15:32 |
|
||
|
|

start [/forum/topic.php?all=1&fid=58&tid=2040668]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
172ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 215ms |
| total: | 466ms |

| 0 / 0 |
