System.ByteStrings for 10.1 Berlin

By | May 31, 2016

Delphi 10.1 Berlin reintroduces UTF8String and RawByteString for the NextGen compilers (Android, iOS). But ShortString and AnsiString are still missing. The compiler has full support for them but you can’t use them because they are declared with a leading underscore in the System.pas unit what makes them inaccessible because “_” is compiled to “@” what you can’t use for an identifier.

By patching DCU files it is possible to make those hidden types accessible.

The unit System.ByteStrings for 10.1 Berlin reintroduces

  • ShortString
  • AnsiString
  • AnsiChar
  • PAnsiChar
  • PPAnsiChar
  • UTF8String (XE5-10 Seattle)
  • PUTF8String (XE5-10 Seattle)
  • RawByteString (XE5-10 Seattle)
  • PRawByteString (XE5-10 Seattle)

Add the System.ByteStrings.dcu’s path to the compiler’s search path and add the unit to your uses clauses.

There is no *.PAS file because the DCU is patched with a hex editor to get access to the hidden types.

Name IDE Version File Size Downloads Added
System.ByteStrings XE5 RTM/UP1 only XE5ByteStrings.7z 2.45 KB 1568 times 2013-10-23
System.ByteStrings XE5 UP2 only XE5Up2ByteStrings.7z 2.85 KB 1494 times 2013-12-20
System.ByteStrings XE6 XE6ByteStrings.7z 2.89 KB 1326 times 2014-04-16
System.ByteStrings XE7 XE7ByteStrings.7z 2.89 KB 1658 times 2015-01-20
System.ByteStrings XE8 XE8ByteStrings.7z 3.69 KB 1713 times 2015-04-16
System.ByteStrings 10 Seattle D10ByteStrings.7z 3.67 KB 1895 times 2015-09-01
System.ByteStrings 10.1 Berlin D101ByteStrings.7z 3.72 KB 2361 times 2016-05-31

One thought on “System.ByteStrings for 10.1 Berlin

  1. Pingback: Berlin kann keine Umlaute - Delphi-PRAXiS

Comments are closed.