Einzelnen Beitrag anzeigen

mjustin

Registriert seit: 14. Apr 2008
3.008 Beiträge
 
Delphi 2009 Professional
 
#1

InterBase UTF8: DFM-Feldeigenschaft 'Size' vervierfachen

  Alt 18. Mai 2010, 12:27
Datenbank: InterBase • Version: 2009 • Zugriff über: dbExpress
Bei der UTF8 Migration eines Delphi 2009 / InterBase 2009 konnten einige Probleme mit einem massenweisen Suchen / Ersetzen zwar gelöst werden, aber ein kleines Problem besteht noch:

Wenn ein TStringField als Feldkomponente angelegt wurde, muss dieses entfernt und neu als TWideStringField hinzugefügt werden, da die Property 'Size' bei UTF8 vier mal größer sein muss als bei WIN1252. Es genügt nicht, einfach nur den Typ per suchen und ersetzen zu ändern.

Aus

Delphi-Quellcode:
object cdsBeispielUSERNAME: TStringField
      FieldName = 'USERNAME'
      Size = 8
end
wird

Delphi-Quellcode:
object cdsBeispielUSERNAME: TWideStringField
      FieldName = 'USERNAME'
      Size = 32
end
Da die DFM Datei als Text vorliegen, könnte man ein Programm schreiben die Size Properties mit dem Faktor vier multipliziert wieder hineinschreibt.

Frage: Hat jemand eventuell dieses Problem in Delphi 2010 ebenfalls bemerkt? Falls ja, dann brauche ich die Trial Version nicht zu installieren (um zu testen, ob es dort genau so ist wie in Delphi 2009)...

Update: gepostet auch in https://forums.embarcadero.com/threa...7398&stqc=true
Michael Justin
  Mit Zitat antworten Zitat