I\'m getting some weird behaviour recompiling some applications in 2009 that used widestrings at various points.
In a Delphi 2009 App is Widestring identical to Str
See this paper by Marco Cantu which outlines the workings of string (i.e. UnicodeString) in Delphi 2009:
"White Paper: Delphi and Unicode"
http://dn.codegear.com/article/38980
Basically, it's what Roddy said, but takes 27 pages to go into detail.