Zeichensatzproblem File-Dialog [Erledigt]

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

Moderator: Moderatoren

Antworten
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Zeichensatzproblem File-Dialog [Erledigt]

Beitrag von Jan »

Hallo,

ich habe ein Problem mit dem XbpFileDialog(). Wenn ich dort unter :title einen String mit Umlaut eingebe, wird das falsch dargestellt. Beispiel: Steht da ein "Mandant wählen", erscheint im Dialog als Titel ein "Mandant wShlen". Das gleiche gilt auch für :fileFilters.

Das Programm ist voll GUI, und in der AppSys steht ein SET CHARSET TO ANSI. Auch der gesamte Quellcode ist ANSI. System ist Windows 10 1909 64 Bit.

Ich hab dann mal, Windows ist ja UTF-8, das per Char2Utf8() konvertiert, auch wenn ich erwarten würde das die Xbase-Funktion solche Konvertierungen selber vornimmt. Das Ergebnis ist noch viel wilder: "Mandant w+ñhlen"

Hat da jemand eine Idee zu?

Jan
Zuletzt geändert von Jan am Do, 16. Jan 2020 14:10, insgesamt 1-mal geändert.
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Marcus Herz
1000 working lines a day
1000 working lines a day
Beiträge: 851
Registriert: Mo, 16. Jan 2006 8:13
Wohnort: Allgäu
Hat sich bedankt: 39 Mal
Danksagung erhalten: 192 Mal
Kontaktdaten:

Re: Zeichensatzproblem File-Dialog

Beitrag von Marcus Herz »

Hi Jan
Das hängt von deinem Editor ab
- Wenn du ANSI editierst, musst du /ga setzen

Grüße
Gruß Marcus

Erkenne, was du findest, dann weißt du, wonach du gesucht hast
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Zeichensatzproblem File-Dialog

Beitrag von brandelh »

Ich stimme zu dass es vom Editor abhängt, aber /GA oder /GO sind gefährlich !
/ga Converts literal strings from ANSI to OEM

When the /ga switch is set, all literal character strings in the PRG source code are converted from ANSI to OEM before the compiler creates the OBJ file.

/go Converts literal strings from OEM to ANSI
Wenn der Quellcode ANSI ist und die GUI EXE Ansi ist (set charset), dann darf da kein /GA oder /GO Schalter gesetzt werden, sonst kommt Schrott raus.

Nur bei ANSI Quellcode und OEM EXE würde man /GA setzen und sich jede Menge Ärger einhandeln ;-)

Wenn alles auf ANSI ist, wird nur noch in die DBF umgesetzt (falls nicht auch Ansi), ich vermute du hast noch ein convToAnsiCP() im Quellcode, weil es früher OEM war.

Warum /GA nach OEM konvertieren soll ist mir zwar unklar (ich hätte es anders erwartet), aber erst seit ich ANSI EXE mit ANSI Quellcode und OEM EXE mit OEM Quellcode festgelegt habe, ist der Ärger weg.
Die Workbench hat immer Ansi Quellcode oder ?
Jan hat geschrieben:Windows ist ja UTF-8, das per Char2Utf8() konvertiert
Nein, Windows hat UTF-8 Unterstützung, das mag sein, aber die Controls sind entweder WIDE (UTF-16) oder ANSI und Xbase++ kann nur die ANSI Version davon nutzen (spricht diese direkt an).

Notfalls probieren, ob convToAnsiCP() oder convToOEMCP() eine Besserung bringt. Wenn das nötig ist, dann war der Quellcode im falschen Format, oder schon konvertiert.
Gruß
Hubert
Benutzeravatar
Marcus Herz
1000 working lines a day
1000 working lines a day
Beiträge: 851
Registriert: Mo, 16. Jan 2006 8:13
Wohnort: Allgäu
Hat sich bedankt: 39 Mal
Danksagung erhalten: 192 Mal
Kontaktdaten:

Re: Zeichensatzproblem File-Dialog

Beitrag von Marcus Herz »

Hallo Hubert

Du hast Recht. Nur beim ARC muss mann noch /ga setzen. Hab ich verwechselt.
Gruß Marcus

Erkenne, was du findest, dann weißt du, wonach du gesucht hast
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Zeichensatzproblem File-Dialog

Beitrag von Jan »

Hallo Ihr beiden,

selbstverständlich arbeite ich mit der Workbench :roll: . Und das Projekt hat keine Konvertierungen drin.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Zeichensatzproblem File-Dialog

Beitrag von Jan »

brandelh hat geschrieben: Do, 16. Jan 2020 13:12Wenn alles auf ANSI ist, wird nur noch in die DBF umgesetzt (falls nicht auch Ansi), ich vermute du hast noch ein convToAnsiCP() im Quellcode, weil es früher OEM war.
Hubert,

dbf sind alle ANSI, Quellcode ist alles ANSI, Ausgabetexte sind alle ANSI.

Mach ich testweise ein ConvToAnsiCP(), dann kommt exakt das Gleiche raus wie ohne jede Konvertierung. Also "wShlen".

Ich werd irre: Mach ich ein ConToOemCP(), dann passt das. Muß ich das jetzt verstehen?

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Marcus Herz
1000 working lines a day
1000 working lines a day
Beiträge: 851
Registriert: Mo, 16. Jan 2006 8:13
Wohnort: Allgäu
Hat sich bedankt: 39 Mal
Danksagung erhalten: 192 Mal
Kontaktdaten:

Re: Zeichensatzproblem File-Dialog

Beitrag von Marcus Herz »

Hi Jan
Da hab ich mich auch schon gewundert, ich denk da ist bei Alaska aus Ursprungszeiten, als alles OEM war, schon ein Konvertierung ConvToAnsiCP in der Funktion drin.
Das gibt auch bei anderen Situationen, fällt mir nur nicht grad ein
Gruß Marcus

Erkenne, was du findest, dann weißt du, wonach du gesucht hast
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Zeichensatzproblem File-Dialog [Erledigt]

Beitrag von brandelh »

So muss es sein, ist das nicht im SYS Ordner ?

Alaska anschreiben !
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Zeichensatzproblem File-Dialog [Erledigt]

Beitrag von Jan »

Hubert,

hatte ich vorhin schon direkt gemacht.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Zeichensatzproblem File-Dialog [Erledigt]

Beitrag von Jan »

PDR 7251

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Antworten