2010-07-29 3 views
3

Я переношу приложение из Delphi 6 - IBX - Firebird 1.5, отлично работающего с Delphi 2010 - Firebird 2.1 - база данных UTF8.Delphi 2010 - IBX - UTF8 - проблема с dbmemo

Проблема заключается в том, что если я использую TDBMemo для отображения данных из BLOB я получаю следующее сообщение об ошибке:

Debugger Exception Notification
Project accedo.exe raised exception class EAccessViolation with message
'Access violation at address 00686059 in module 'accedo.exe'. Read of address 000000EC'.

Если удалить компонент заметки программа работает просто отлично.

BLOB - это текст BLOB (sub_type 1).

Я знаю, что IBX больше не поддерживает Firebird, но кто-нибудь испытал проблемы с использованием TDBMemo для извлечения и отображения текста blob-текста UTF8 от Firebird 2.1?

ответ

0

Это известная проблема с IBX и UTF8 для Firebird.

Я слышал о патче (не embarcadero) для этого, но я не нахожу его.

Другое решение - переключиться с IBX на FIBPlus, IBDac или UIB.

+0

Большое спасибо, было бы здорово, если бы вы помнили, где это решение, я не хочу менять контроллер db в это время, потому что это подразумевает переписывание всего приложения. Любые другие рекомендации, кроме FIBPlus, IBDac или UIB (эти три являются коммерческими продуктами, правда?) –

+0

FIBPlus и IBDac являются коммерческим продуктом, и есть некоторые инструменты для решения задач перехода от IBX. UIB свободен, быстро, но вам нужно многое изменить. Для исправления, возможно, вы можете запросить список поддержки firebird. –

+0

Большое спасибо, я буду смотреть на ваши рекомендации. С уважением, AJ –

Смежные вопросы