Subject Re: [IBO] Unusable Alpha Version for Delphi 2009
Author m. Th.
Andreas Hesse wrote:
> Hello Jason,
> the last alpha version of IBO 4.9 is really unuseable with Delphi
> 2009. It doesn't really support unicode.

> AsString must return a string, not an AnsiString.

Take care here!!

This was a very big discussion 'somewhere' :-). I cannot tell you many
things but due of compatibility reasons - mainly concerns which are tied
to the fact that many users are storing non-text data (binary etc.)
using .AsString - the Get/SetAsString uses GetAsAnsiString internally.
From D2009's DB.PAS:

function TStringField.GetAsString: string;
Result := string(GetAsAnsiString);

...also you can have a look at TStringField.GetValue(var Value:
AnsiString): boolean;
and, of course at SetAsString.

The workaround (for the time being) is to use .AsWideString which
returns an Unicode string.

Also, since the above hard-cast is in DB.Pas (iow outside of our
control) there will be problems with TIBO layer.

> I can send you my last version of IBO for D2009.
> Not everything is working (TIBO...-Components have problems,

WHAT problems?

> automatic
> Text-Blob-Conversion is not implemented for FB 2.1, and a few more)

Hmmm... see above.
> My main design desicions:
> - drop support for Delphi3/4


Also, perhaps, D5/6 can be dropped. The polls indicate that after D2007
the vast majority of users are concentrated on D7/D2007. But if someone
is against please raise the hand.

> - all handling of string conversion will be done at connection level
> called by the TIB_Column Set/Get-Methods
> (real conversion between connection charset and system charset)
> (prefered connection charset is now UTF8)

Take care, as I said, at the problem described above. Did you consider
to apply for the Weaver beta test? (see

> - all string handling will be done with unicode strings
> (length, uppercase, lowercase, ...)


> In the moment it is only a ansi-fied version of IBO without real
> unicode support.

> Sorry,
> Andreas