Перейти к содержанию
Fire Monkey от А до Я
  • 0

Теряется работоспособность программы скомпилированной в Berlin на Win Xp


Vitaldj

Вопрос

Проблема очень странная. На этой недели стал полностью переносить свое приложение для десктопов (Win и Mac) на Berlin. В одном из модуле использую стандартную grid. В сиэтле работало как часы. Тут откомпилировал, вроде все работает. Программирую на маке, windows 7 стоит в виртуальной. Шло все хорошо. Сегодня запустил на работе, там windows XP. И каково было мое удивление, что после ряда манипуляций прога просто уходит в какой то ступор. Поясняю. Открываю место в программе, где показывается grid. Строк много в grid. Проверял и на 7000  и на 3000. Это перечень закупленных медикаментов. При открытии данных, все они помещаются в grid. Но стоит несколько раз сходить вниз и снова вверх по данным (через NavigatorBindSourceDB), сетка теряется (белый лист). Причем это всего  через1-2 нажатие. Если я в XP открываю приложение из Сиэтла, такого не происходит! Код один и тот же! И если я запускаю в Windows 7 или 10, такого тоже не происходит (хоть Сиэтл хоть Берлин). Причем, что интересно, в рабочий комп с XP я поставил тоже виртуалку и туда Window 7. Так так все работает!!! То есть это не зависит от видеокарты и мощности процессора. В маке тоже работает как часы. Хоть 10000 тыс строк! То есть проблема именно в XP. Параллельно к тому, что теряется grid еще и приложение глючит. То есть теряются label и надписи у кнопок, а верхняя панель, где кнопки закрыть, свернуть, тоже теряется.

Вот так выглядит нормальное приложение:

1.png

Вот так, если сделать навигацией взад-вперед:

2.png

Потом, после нескольких кликов по пустой сетки, теряются надписи (вверху, нет надписей у закладок):

3.png

А потом у родителя верхняя панель:

4.png

Такое ощущение, что ресурсов не хватает!

Я в растерянности. Что делать? Подскажите!

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

Поддержка XP в Rad Studio давно прекращена, поэтому глюки под XP могут быть любые.

Скорее всего текстуры теряются по какой-то причине, попробуй использовать прорисовку с помощью GDI+, для этого надо в главном файле приложения снять флаг FMX.Types.GlobalUseDirect2D := False;
 

Ссылка на комментарий
  • 0
1 час назад, Error сказал:

Поддержка XP в Rad Studio давно прекращена, поэтому глюки под XP могут быть любые.

Скорее всего текстуры теряются по какой-то причине, попробуй использовать прорисовку с помощью GDI+, для этого надо в главном файле приложения снять флаг FMX.Types.GlobalUseDirect2D := False;
 

Это то, что было изначально, еще с Сиэтла. В этом режиме Берлин совсем не выносим! Все очень медленно загружается окна очень медленно прогружаются. Экспорт из файла длится секунд 10, а без этого режима менее секунды. Поэтому убрал брал эту строчку совсем. А с этим флагом происходит тоже самое, тольео еще хуже((

Ссылка на комментарий
  • 0
1 час назад, Vitaldj сказал:

Это то, что было изначально, еще с Сиэтла. В этом режиме Берлин совсем не выносим! Все очень медленно загружается окна очень медленно прогружаются. Экспорт из файла длится секунд 10, а без этого режима менее секунды. Поэтому убрал брал эту строчку совсем. А с этим флагом происходит тоже самое, тольео еще хуже((

Тогда мне на ум приходит идея прогнать все подозрительные FMX.XXX.pas через diff и сравнить изменения с Сиэтлом, возможно удаться найти виновное изменение.
 

Ссылка на комментарий
  • 0

да. Direct2D надо отключать в явном виде

и приложение перейдет на софт рендеринг

не думаю, что будет хорошо

поэкспериментируйте с комбинациями FMX.Types.GlobalXXXX

Ссылка на комментарий
  • 0
7 минут назад, krapotkin сказал:

да. Direct2D надо отключать в явном виде

и приложение перейдет на софт рендеринг

не думаю, что будет хорошо

поэкспериментируйте с комбинациями FMX.Types.GlobalXXXX

Попробую завтра на работе)

Изменено пользователем Vitaldj
Ссылка на комментарий
  • 0

К сожалению, применение всех пунктов - безрезультатно! ((((

  fmx.types.GlobalUseHWEffects:=false;
  FMX.Types.GlobalDisableFocusEffect:=false;
  FMX.Types.GlobalUseDirect2D:=false;
  FMX.Types.GlobalUseDXSoftware:=false;
 // fmx.Types.GlobalUseDX := false; // этот не позволяет даже загрузиться корректно
  FMX.Types.GlobalUseDXInDX9Mode := false;
  FMX.Types.GlobalUseGPUCanvas := false;
  FMX.Types.GlobalUseGDIPlusClearType := false; 

 

Повторяю, с Сиэтле нет такой проблемы! Такое ощущение, что они компилятор под винду сломали(

Изменено пользователем Vitaldj
Ссылка на комментарий
  • 0
В 20 мая 2016 г. в 10:15, krapotkin сказал:

не факт, что все false

именно комбинация должна быть 

я как-то экспериментировал, но давно и забыл...

Вот все переменные, которые идут по умолчанию при запуске программы:

fmx.types.GlobalUseHWEffects = true
FMX.Types.GlobalDisableFocusEffect = false
 FMX.Types.GlobalUseDirect2D = true
FMX.Types.GlobalUseDXSoftware = false
fmx.Types.GlobalUseDX = true
FMX.Types.GlobalUseDXInDX9Mode = false
FMX.Types.GlobalUseGDIPlusClearType = true
 FMX.Types.GlobalUseGPUCanvas= false

 

Причем, они не зависят от операционки. Проверял на WinXP, Win7, macOx. 

С моей проблемой помогает только  FMX.Types.GlobalUseGPUCanvas= TRUE. И все в Windows XP просто летает и ничего не глючит! Но вы посмотрите на интерфейс:

Screenshot - 23_05.png

Ничего не видно! Просто ужас!!! Пробовал по всякому с другими FMX.Types.Global, ничего не исправляет! А как только возвращаю FMX.Types.GlobalUseGPUCanvas= false, то становиться все красиво, но глючит (читай первый пост).

Help me (((

Ссылка на комментарий
  • 0

Коллеги, есть у кого еще комп с windows ХР, я бы в личку скинул тест приложения, поглядели бы? Времени много не займет. Просто хотелось бы окончательно убедиться в глючности на windows ХP. 

Ссылка на комментарий
  • 0

Прожку свою на TMS скопиленную под берлином щас дал корешу с ХП. Тормозит жутко. Но там селерон 800 ))) так что хз где собака порылась .. проблем, собственно, отображения - нет.

А вот с какой XE поддержка ХП убрана?

 

 

P.S. GlobalUseGPUCanvas = TRUE кстати не изменило отображение. Но результат по скорости ещё не проверял.

Изменено пользователем POV
Ссылка на комментарий
  • 0
8 часов назад, Vitaldj сказал:

Коллеги, есть у кого еще комп с windows ХР, я бы в личку скинул тест приложения, поглядели бы? Времени много не займет. Просто хотелось бы окончательно убедиться в глючности на windows ХP. 

Вы используете от TMS что то? Если "Да", то где то читал про такой глюк, но найти не могу где!

Ссылка на комментарий
  • 0
6 часов назад, wamaco сказал:

Вы используете от TMS что то? Если "Да", то где то читал про такой глюк, но найти не могу где!

Использую, но не сетку. Только HtmlText. И на той форме, что выше, нет TMS.

Ссылка на комментарий
  • 0
8 часов назад, POV сказал:

Прожку свою на TMS скопиленную под берлином щас дал корешу с ХП. Тормозит жутко. Но там селерон 800 ))) так что хз где собака порылась .. проблем, собственно, отображения - нет.

А вот с какой XE поддержка ХП убрана?

 

 

P.S. GlobalUseGPUCanvas = TRUE кстати не изменило отображение. Но результат по скорости ещё не проверял.

А где вы прописываете GlobalUseGPUCanvas = TRUE ? До инициализации приложения? Вот вам очень простой пример. Слева GlobalUseGPUCanvas = false  справа GlobalUseGPUCanvas = TRUE. Как говорить результат налицо. Проверял на нескольких Win XP результат один: интерфейс просто ужасен. Иногда прочитать даже невозможно(((

Screenshot - 23_05.png

Пример взят отсюда: 

 

Изменено пользователем Vitaldj
Ссылка на комментарий
  • 1
1 час назад, haword сказал:

может пропустил но пробовали установить только FMX.Types.GlobalUseGDIPlusClearType = true а остальные переменные в false? у меня в таком варианте немного быстрее работало. 

А интерфейс после этого в windows XP видели? В других, все ок, а в XP как на скрине вверху, нечитабельно, но быстро и все летает!

Ссылка на комментарий
  • 0
15 минут назад, POV сказал:

Кореш подтвердил, что прежняя сборка под Seattle работала нормально на XP и слабеньком селероне. А эта лишь на семерке запустилась.

Грустно(((. Проблема в том, что во многих учреждениях (я пишу для медицинских), до сих пор парк Win XP не маленький! И сбрасывать ее со счетов, пока рановато. Поэтому FMX лучше там не использовать. Это я понял поздно(.

Ссылка на комментарий
  • 0
11 минуту назад, Vitaldj сказал:

Грустно(((. Проблема в том, что во многих учреждениях (я пишу для медицинских), до сих пор парк Win XP не маленький! И сбрасывать ее со счетов, пока рановато. Поэтому FMX лучше там не использовать. Это я понял поздно(.

Может проще на Seattle вернуться? и ждать след. версии после Berlina?

Ссылка на комментарий
  • 0
1 час назад, Vitaldj сказал:

Вот подтвержденный ответ.

Сиэтл:

Screenshot at Seattle.png

Берлин:

Screenshot berlin.png

Видите как по разному написано в Windows! В берлине конкретно указаны версии, а в Сиэтле нет.

Так получается , что и vcl не поддерживается что ли?

Ссылка на комментарий
  • 0
4 минуты назад, wamaco сказал:

Так получается , что и vcl не поддерживается что ли?

Да черт его знает, я на VCL давно не программировал.

Вот ссылки, откуда я это взял:

http://docwiki.embarcadero.com/RADStudio/Seattle/en/Supported_Target_Platforms

http://docwiki.embarcadero.com/RADStudio/Berlin/en/Supported_Target_Platforms

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...