Thema: Delphi WM_GETTEXT + Unicode

Einzelnen Beitrag anzeigen

Assarbad
(Gast)

n/a Beiträge
 
#8

Re: WM_GETTEXT + Unicode

  Alt 27. Okt 2004, 21:36
Zitat von Luckie:
Zitat von toms:
Funktioniert jetzt aber seltsamerweise mit Mal 2 (hatte wohl etwas anderes noch geändert)
Hätte auch sonst mein Weltbild vom Unicode-Zeichensatz zerstört.
Zitat von Bernhard Geyer:
Wieso? Unicode-Zeichen sind doch mit 4 Byte definiert (ist ja mittlerweile bis #$10FFFD definiert)?
Ihr habt beide recht und unrecht. Das Problem ist, daß es verschiedene Bereiche von Unicode gibt und auch verschiedene Kodierungsmöglichkeiten - inklusive derer die mit 8bit pro Zeichen auskommen und dennoch ÜBER 64k Zeichen darstellen können (UTF8 nämlich). Entscheidend ist *hier* aber wie Windows das kodiert und das hat Barnhard schon erläutert. Daß sie mit 4 Byte definiert sind kann ich genauso verneinen, denn in 10 Jahren sind es vielleicht bereits 8 Byte (Minimum!) - und Minimum ist hier die wichtige Angabe.

Statt es mal 2 zu nehmen sollte man IMMER sizeof(WideChar) benutzen (denn die Definition von WideChar kann sich ändern). Außerdem sollte man zur Textlänge 1 addieren für die schließende #0.
  Mit Zitat antworten Zitat