Changes for Unicode Support in Delphi

From RemObjects Wiki

Jump to:navigation, search

This is a Data Abstract Architecture topic
Feel free to add your notes to this topic below.


This is a RemObjects SDK Architecture topic
Feel free to add your notes to this topic below.


This document describes changes made to RemObjects SDK and Data Abstract for Unicode support introduced in CodeGear Delphi 2009 (aka Tiburon).

In general, we have tried to keep changes as transparent and intuitive as possible, so that in most cases existing applications using our products will "just work" in Delphi 2009. However, since the switch from ANSI to Unicode is especially relevant for wire compatibility, the following notes should be observed.

Changes in RemObjects SDK for Delphi

Developer Action Needed

The above adjustments assure that wire compatibility is not broken between Unicode and non-Unicode clients/servers (and .31 and prior clients/servers). However, what will be "broken" (by matter of definition) is code that assumes it can simply pass "String" variables defined in user code (which will be Unicode in Delphi 2008 and beyond) into the existing RODL methods that were defined as "String" (and now "AnsiString"). Conversion and possible data loss will occur here - make sure to enable the Warning provided by Delphi 2009 to catch any potential problems in your code.

One can't have it both ways, and wire compatibility is king. Users moving their application to Delphi 2009 will need to review their String vs AnsiString usage application-wide; they will need to review how code interacts with their String/AnsiString defined RODLs.

Changes Relevant to Users of the .NET Products


Ro-48.png

Product: RemObjects SDK
Available Editions: RemObjects SDK for .NET, Delphi and Xcode

GlossaryArchitectureArticlesFeaturesLibrarySamples

Da-48.png

Product: RemObjects Data Abstract
Available Editions: Data Abstract for .NET, Delphi and Xcode

GlossaryArchitectureArticlesFeaturesLibrarySamples

Navigation
products
hubs
special
Toolbox