Страница 1 из 1

IBX проблемы с русским

СообщениеДобавлено: 25.11.2018 23:38:38
DedFrend
База данных Firebird 2.5 Кодировка WIN1251

При доступе через компоненты IBX (TIBConnection, TIBTable) данные отображаются нормально,
но при попытке редактировать русский текст (даже просто пробел добавить) после post
символы превращаются в кракозяблы (похоже, что UTF-8).

Это в Lazarus 1.6.2. и в разных проектах. В Delphi ничего подобного не происходит.

Ось в обоих случаях Windows XP
Пакет dclibx 2.0.2

UTF-8 я , сознательно во всяком случае, нигде не указывал

Re: IBX проблемы с русским

СообщениеДобавлено: 28.11.2018 08:31:08
DedFrend
Пока шла премодерация обнаружилось, что проблема не на всех компах. На одном, при той же Winodws XP, и ,казалось бы, той же кофигурации Лазаря проблемы нет.
И exe взятый оттуда работает нормально. Т.е. проблема все же в Лазаре.
А чтобы его просто переставить - надо что-то предварительно сносить?

Re: IBX проблемы с русским

СообщениеДобавлено: 28.11.2018 08:38:05
Снег Север
DedFrend писал(а):UTF-8 я , сознательно во всяком случае, нигде не указывал

А надо указывать. Или мириться с непредсказуемыми последствиями.

Re: IBX проблемы с русским

СообщениеДобавлено: 28.11.2018 14:22:06
olegy123
DedFrend писал(а):символы превращаются в кракозяблы (похоже, что UTF-8).
видимо сам редактор текста работает в UTF-8, дело в том что канва рисуется в графике а редактор подставляется дефолтный виндовый которые не думает что кодировка в WIN1251.
Вообще то это давно решили путем конкретного указания при подключении Codepage/CharSet
БД сама умеет перекодировать на лету.

DedFrend писал(а):проблема не на всех компах. На одном, при той же Winodws XP, и ,казалось бы, той же кофигурации Лазаря проблемы нет.
в XP еще юзали WIN1251

Re: IBX проблемы с русским

СообщениеДобавлено: 28.11.2018 16:12:47
*Rik*
От операционной системы зависеть не должно, приложения Lazarus по умолчанию используют UTF8 и все что нужно для его поддержки вшито в приложение. FireBird умеет отдавать данные в той кодировке, которая требуется для приложения, для этого в компоненте TIBDatabase нужно указать кодировку, которую использует приложение.
IBDatabaseEdit.png

Re: IBX проблемы с русским

СообщениеДобавлено: 29.11.2018 20:56:32
DedFrend
Итак: было три компа почти одинаковых по ПО.
На одном проблемы не было, на двух была. Проблема распространялась на все вновь компилируемые приложения.
На одном компе проблема ушла как и пришла - незаметно.
На оставшемся проблемном - переустановка пакета IBX не помогла, переустановка Лазаря, а потом IBX - помогла.
Если опять сломается - м.б. продолжу тему