LongMonthNames
-
- Beiträge: 323
- Registriert: Di 12. Apr 2011, 13:21
- OS, Lazarus, FPC: WinXP + VMWare Player mit Fedora14, L 1.1, FPC 2.7.1
- CPU-Target: 1core 1,8GHz 32Bit
- Wohnort: Fürth
- Kontaktdaten:
LongMonthNames
Hallo,
ich finde es schade, dass die Umlaute in FormatSettings.LongMonthNames[] im IBM Code belegt sind und nicht in UTF8. Bei Delphi 5 auf meinem deutschen Windows sind sie im CP1252 Code belegt. Wenn ich in einer internationalen Lazarus Anwendung einen LongMonthName auf der Windows Oberfläche anzeigen möchte, muss ich GuessEncoding aufrufen und an ConvertEncodung übergeben. Ist das zuverlässig, oder kommt dabei evtl. eine falsche Codierung raus? Wie kann ich stattdessen die Codierung, die im Betriebssystem eingestellt ist, abfragen, um sie an ConvertEncoding zu übergeben?
Gruß
Heiner
ich finde es schade, dass die Umlaute in FormatSettings.LongMonthNames[] im IBM Code belegt sind und nicht in UTF8. Bei Delphi 5 auf meinem deutschen Windows sind sie im CP1252 Code belegt. Wenn ich in einer internationalen Lazarus Anwendung einen LongMonthName auf der Windows Oberfläche anzeigen möchte, muss ich GuessEncoding aufrufen und an ConvertEncodung übergeben. Ist das zuverlässig, oder kommt dabei evtl. eine falsche Codierung raus? Wie kann ich stattdessen die Codierung, die im Betriebssystem eingestellt ist, abfragen, um sie an ConvertEncoding zu übergeben?
Gruß
Heiner
Re: LongMonthNames
Habe grad kein Windows laufen, aber geht denn nicht
SysToUTF8(); ?
Unter Linux macht das dann einfach nichts.
Edit: Unter Wine geht's auch:
Caption:=SysToUTF8(FormatSettings.LongMonthNames[3]);
SysToUTF8(); ?
Unter Linux macht das dann einfach nichts.
Edit: Unter Wine geht's auch:
Caption:=SysToUTF8(FormatSettings.LongMonthNames[3]);
-
- Beiträge: 323
- Registriert: Di 12. Apr 2011, 13:21
- OS, Lazarus, FPC: WinXP + VMWare Player mit Fedora14, L 1.1, FPC 2.7.1
- CPU-Target: 1core 1,8GHz 32Bit
- Wohnort: Fürth
- Kontaktdaten:
Re: LongMonthNames
Hi Theo,
SysToUTF8 bringt kein 'ä', sondern stattdessen ein '?'. AnsiToUTF8 genauso. Das beschäftigt mich immer noch. Siehe auch http://www.lazarusforum.de/viewtopic.php?f=9&t=5001. Wozu gibt es dann diese Funktionen? Muss ich noch irgendeine Unit zusätzlich einbinden, damit sie funktionieren?
Heiner
SysToUTF8 bringt kein 'ä', sondern stattdessen ein '?'. AnsiToUTF8 genauso. Das beschäftigt mich immer noch. Siehe auch http://www.lazarusforum.de/viewtopic.php?f=9&t=5001. Wozu gibt es dann diese Funktionen? Muss ich noch irgendeine Unit zusätzlich einbinden, damit sie funktionieren?
Heiner
Re: LongMonthNames
Keine Ahnung, auf meinem alten Win2k geht's einwandfrei mit SysToUtf8
Siehe Anhang.
Siehe Anhang.
-
- Beiträge: 323
- Registriert: Di 12. Apr 2011, 13:21
- OS, Lazarus, FPC: WinXP + VMWare Player mit Fedora14, L 1.1, FPC 2.7.1
- CPU-Target: 1core 1,8GHz 32Bit
- Wohnort: Fürth
- Kontaktdaten:
Re: LongMonthNames
Hallo Theo,
bei Dir funktioniert SysToUTF8, bei mir nicht. Wo liegt der Unterschied? Ich hab WinXP, L 0.9.31 und FPC 2.7.1 . Im Index der Online Hilfe ist SysToUTF8 nicht drin. Aber der Compiler kennt sie. Soll diese Funktion nicht mehr verwendet werden?
Heiner
bei Dir funktioniert SysToUTF8, bei mir nicht. Wo liegt der Unterschied? Ich hab WinXP, L 0.9.31 und FPC 2.7.1 . Im Index der Online Hilfe ist SysToUTF8 nicht drin. Aber der Compiler kennt sie. Soll diese Funktion nicht mehr verwendet werden?
Heiner
Re: LongMonthNames
Nicht dass ich wüsste:
http://lazarus-ccr.sourceforge.net/docs ... outf8.html" onclick="window.open(this.href);return false;
http://wiki.freepascal.org/LCL_Unicode_ ... _for_users" onclick="window.open(this.href);return false;
http://lazarus-ccr.sourceforge.net/docs ... outf8.html" onclick="window.open(this.href);return false;
http://wiki.freepascal.org/LCL_Unicode_ ... _for_users" onclick="window.open(this.href);return false;
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: LongMonthNames
cpstrnew?
Re: LongMonthNames
Kann sein, da er FPC 2.7.1 hat.mse hat geschrieben:cpstrnew?
Da kann ich allerdings auf Windows noch nicht mitreden, hab ich erst auf Linux.
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: LongMonthNames
Spekulation:
Falls Lazarus die FPC Systemcodierung in Windows auf utf-8 umstellt, läuft der Zugriff auf LongthMonthNames schief, da dort bei Heinrich CP1252 vorliegt.
Martin
Falls Lazarus die FPC Systemcodierung in Windows auf utf-8 umstellt, läuft der Zugriff auf LongthMonthNames schief, da dort bei Heinrich CP1252 vorliegt.
Martin
Re: LongMonthNames
Auf Linux mit FPC 2.7.1 mit Crosscompiler und Wine funzt es allerdings genau wie erwartet.
-
- Beiträge: 323
- Registriert: Di 12. Apr 2011, 13:21
- OS, Lazarus, FPC: WinXP + VMWare Player mit Fedora14, L 1.1, FPC 2.7.1
- CPU-Target: 1core 1,8GHz 32Bit
- Wohnort: Fürth
- Kontaktdaten:
Re: LongMonthNames
Diese Seite hab ich auch gefunden. So was an Doku ist ein Witz. Und in den Index ist das nicht eingetragen.theo hat geschrieben:http://lazarus-ccr.sourceforge.net/docs ... outf8.html
-
- Beiträge: 323
- Registriert: Di 12. Apr 2011, 13:21
- OS, Lazarus, FPC: WinXP + VMWare Player mit Fedora14, L 1.1, FPC 2.7.1
- CPU-Target: 1core 1,8GHz 32Bit
- Wohnort: Fürth
- Kontaktdaten:
Re: LongMonthNames
Hallo mse,mse hat geschrieben:cpstrnew?
was willst Du damit fragen?
Heiner
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: LongMonthNames
"cpstrnew" ist der "FPC Unicode Support" in FPC 2.7.1.
http://wiki.freepascal.org/FPC_Unicode_support
Warum benötigst du FPC trunk?
http://wiki.freepascal.org/FPC_Unicode_support
Warum benötigst du FPC trunk?
-
- Beiträge: 323
- Registriert: Di 12. Apr 2011, 13:21
- OS, Lazarus, FPC: WinXP + VMWare Player mit Fedora14, L 1.1, FPC 2.7.1
- CPU-Target: 1core 1,8GHz 32Bit
- Wohnort: Fürth
- Kontaktdaten:
Re: LongMonthNames
Hallo,mse hat geschrieben:"cpstrnew" ist der "FPC Unicode Support" in FPC 2.7.1.
http://wiki.freepascal.org/FPC_Unicode_support
Warum benötigst du FPC trunk?
http://svn.freepascal.org/svn/fpc/branches/cpstrnew mag ich dafür jetzt nicht installieren. fpc trunk hab ich, seit manche meiner bug reports bearbeitet wurden. Zum Beseitigen der Fehler brauchte ich fpc trunk.
Heiner