Darstellung einer UTF-8-Mail [Erledigt]
Moderator: Moderatoren
- Jan
- Marvin
- Beiträge: 14653
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Darstellung einer UTF-8-Mail [Erledigt]
Moin,
gerade bin ich etwas irritiert. Ich möchte gerne in einem XbpHTMLViewer() Mailtexte anzeigen. Prinzipiell klappt das auch. Aber es gibt, wie kaum anders zu erwarten, Darstellungsfehler. Das hier sind erst einmal die Grundparameter:
Mailformat: UTF-8 (so steht es jedenfalls im Mailheader drin)
Ausgabe: OEM-Oberfläche
Quellcode ANSI, kompiliert mit /ga
Kein SET CHARSET TO ANSI im Code
Was ich mache ist also, das ich in der Mail nachsehe, ob im Header ein "charset=utf-8" drin steht. Wenn ja, dann mache ich ein UTF8ToAnsi() auf den Text. Die Funktion habe ich vor Jahren mal von Günter Beyes bekommen, und setze die andernorts mit Erfolg ein.
Wenn ich das nicht mache, dann werden statt Sonderzeichen wie ß die auf der Spitze stehenden schwarzen Rauten angezeigt. mache ich die Umwandlung, dann stehen da jetzt aber ?. Auch nicht viel schicker.
Dazu kommt folgendes: Da der Mailtext nur mit Verzögerung bereit steht, zeige ich vorher eine hart kodierte Meldung an mit dem Hinweis, das bitte noch ein wenig gewartet werden soll. Diese Meldung beinhaltet ein ß. Nun könnte man meinen, das die korrekt angezeigt wird, überall sonst werden ja auf der Oberfläche auch Umlaute korrekt angezeigt. Nichts da. Angezeigt wird ein á. Und nur, wenn ich das mit ConvToAnsiCP() umwandle, dann erscheint auch das ß.
Wo ist da mein Denkfehler?
Jan
gerade bin ich etwas irritiert. Ich möchte gerne in einem XbpHTMLViewer() Mailtexte anzeigen. Prinzipiell klappt das auch. Aber es gibt, wie kaum anders zu erwarten, Darstellungsfehler. Das hier sind erst einmal die Grundparameter:
Mailformat: UTF-8 (so steht es jedenfalls im Mailheader drin)
Ausgabe: OEM-Oberfläche
Quellcode ANSI, kompiliert mit /ga
Kein SET CHARSET TO ANSI im Code
Was ich mache ist also, das ich in der Mail nachsehe, ob im Header ein "charset=utf-8" drin steht. Wenn ja, dann mache ich ein UTF8ToAnsi() auf den Text. Die Funktion habe ich vor Jahren mal von Günter Beyes bekommen, und setze die andernorts mit Erfolg ein.
Wenn ich das nicht mache, dann werden statt Sonderzeichen wie ß die auf der Spitze stehenden schwarzen Rauten angezeigt. mache ich die Umwandlung, dann stehen da jetzt aber ?. Auch nicht viel schicker.
Dazu kommt folgendes: Da der Mailtext nur mit Verzögerung bereit steht, zeige ich vorher eine hart kodierte Meldung an mit dem Hinweis, das bitte noch ein wenig gewartet werden soll. Diese Meldung beinhaltet ein ß. Nun könnte man meinen, das die korrekt angezeigt wird, überall sonst werden ja auf der Oberfläche auch Umlaute korrekt angezeigt. Nichts da. Angezeigt wird ein á. Und nur, wenn ich das mit ConvToAnsiCP() umwandle, dann erscheint auch das ß.
Wo ist da mein Denkfehler?
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2825
- Registriert: Fr, 08. Feb 2008 21:29
- Hat sich bedankt: 96 Mal
- Danksagung erhalten: 13 Mal
Re: Darstellung einer UTF-8-Mail
Hallo, Jan -
also, ich fange mal mit dem "ß" an. Wenn ich ein kleines Testprogramm habe, das ich mit /ga compiliere, und KEINE Anweisung SET CHARSET TO drin habe, dann wird z.B. in einer ConfirmBox() das "ß" korrekt angezeigt, und ebenso in der Titelleiste des XbpDialog() bei einer Zuweisung dieser Art:
Daher ein paar Verständnisfragen:
basiert Dein Programm auf XbpCRT() oder XbpDialog()?
hast Du eine SET CHARSET TO Anweisung im Programm?
also, ich fange mal mit dem "ß" an. Wenn ich ein kleines Testprogramm habe, das ich mit /ga compiliere, und KEINE Anweisung SET CHARSET TO drin habe, dann wird z.B. in einer ConfirmBox() das "ß" korrekt angezeigt, und ebenso in der Titelleiste des XbpDialog() bei einer Zuweisung dieser Art:
Code: Alles auswählen
oDlg:title := "geht es mit ß?"
basiert Dein Programm auf XbpCRT() oder XbpDialog()?
hast Du eine SET CHARSET TO Anweisung im Programm?
Liebe Grüsse aus der Eifel,
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
- Jan
- Marvin
- Beiträge: 14653
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Georg,
wie ich oben schon schrieb: OEM-Oberfläche, kein SET CHARSET TO ANSI (und auch sonst kein SET CHARSET).
Jan
wie ich oben schon schrieb: OEM-Oberfläche, kein SET CHARSET TO ANSI (und auch sonst kein SET CHARSET).
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9361
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
@Jan: Die "hart codierte" Nachricht - verwendest Du dafür :SetHtml()?
Herzlich,
Tom
Tom
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2825
- Registriert: Fr, 08. Feb 2008 21:29
- Hat sich bedankt: 96 Mal
- Danksagung erhalten: 13 Mal
Re: Darstellung einer UTF-8-Mail
Hallo, Jan -
leider ist meine zweite Frage noch offen: XbpDialog() oder XbpCRT()?
Das Verhalten Deines Programms in der Anzeige ist - zumindest, wenn ich von XbpDialog() ausgehe - atypisch, daher versuche ich zu verstehen, warum es nicht klappt.
leider ist meine zweite Frage noch offen: XbpDialog() oder XbpCRT()?
Das Verhalten Deines Programms in der Anzeige ist - zumindest, wenn ich von XbpDialog() ausgehe - atypisch, daher versuche ich zu verstehen, warum es nicht klappt.
Liebe Grüsse aus der Eifel,
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
- Jan
- Marvin
- Beiträge: 14653
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Tom,
sowohl die Mails als auch die hart kodierte Nachricht schreibe ich in Array-Felder rein. Und dessen Inhalt wird dann beim Blättern im XbpHtmlViewer()-Fenster angezeigt. Indem die mit :setHtml(aArrayElement) zugewiesen werden.
Bei diesem Zuweisen mache ich noch ein paar Umformatierungen, z. B. mache ich aus crlf in reinen Textmails ein "<br>, weil das dann in HTML korrekt angezeigt wird. Wobei diese reinen Textmails ohne jede Konvertierung der Zeichensätze sauber angezeigt werden.
Jan
sowohl die Mails als auch die hart kodierte Nachricht schreibe ich in Array-Felder rein. Und dessen Inhalt wird dann beim Blättern im XbpHtmlViewer()-Fenster angezeigt. Indem die mit :setHtml(aArrayElement) zugewiesen werden.
Bei diesem Zuweisen mache ich noch ein paar Umformatierungen, z. B. mache ich aus crlf in reinen Textmails ein "<br>, weil das dann in HTML korrekt angezeigt wird. Wobei diese reinen Textmails ohne jede Konvertierung der Zeichensätze sauber angezeigt werden.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Jan
- Marvin
- Beiträge: 14653
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Georg,
wegen einiger grafischer Elemente in der Oberfläche gibt es zu Beginn des Codes ein oXbp := SetAppWindow(). Und oXbp ist der Parent des XbpHtmlViewer(). Das wars dann aber auch schon.
Jan
wegen einiger grafischer Elemente in der Oberfläche gibt es zu Beginn des Codes ein oXbp := SetAppWindow(). Und oXbp ist der Parent des XbpHtmlViewer(). Das wars dann aber auch schon.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2828
- Registriert: Fr, 10. Feb 2006 9:51
- Wohnort: Aachen
- Hat sich bedankt: 259 Mal
- Danksagung erhalten: 12 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Und Jan, was für einen Typ hat oXbp?
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
Mitglied XuG Cologne
Mitglied XuG Osnabrück
- Jan
- Marvin
- Beiträge: 14653
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Uli,
ich versteh Deine Frage nicht. Wie ich schrieb, ist oXbp:= SetAppWindow(). Was sonst kann ich dazu sagen?
Jan
ich versteh Deine Frage nicht. Wie ich schrieb, ist oXbp:= SetAppWindow(). Was sonst kann ich dazu sagen?
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- brandelh
- Foren-Moderator
- Beiträge: 15696
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
SetAppWindow() gibt ja das Anwendungsfenster zurück.
Mögliche Typen: XbpDialog, XbpCrt oder ... das beim Consolenfenster (name fällt mir grad nicht ein) oder eine eigena Ableitung davon ...
Jedes verhält sich anders ...
Auch ein Verweis auf OEM stellt das nicht klar, da der Zeichensatz bei allen möglich ist !
Mögliche Typen: XbpDialog, XbpCrt oder ... das beim Consolenfenster (name fällt mir grad nicht ein) oder eine eigena Ableitung davon ...
Jedes verhält sich anders ...
Auch ein Verweis auf OEM stellt das nicht klar, da der Zeichensatz bei allen möglich ist !
Gruß
Hubert
Hubert
- Jan
- Marvin
- Beiträge: 14653
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Hubert,
gleich in meinem ersten Beitrag schrieb ich OEM-Oberfläche. Wenn das mal wieder zu unklar gewesen sein soll (wirft man mir ja ganz gerne mal vor): Es ist nichts definiert. Kein XbpCrt, kein XbpDialog, kein irgendwas. Also ganz einfach die normale DOS-Oberfläche die kommt, wenn man nichts einträgt. Da ich aber wie beschrieben einige GUI-Elemente eingebaut habe, die auf einer als OEM estellen Anwendung nicht laufen würden, ist das al GUI=yes kompiliert. Alle Einstellungen in der betreffenden Sektion der xpj lauten:
Jan
gleich in meinem ersten Beitrag schrieb ich OEM-Oberfläche. Wenn das mal wieder zu unklar gewesen sein soll (wirft man mir ja ganz gerne mal vor): Es ist nichts definiert. Kein XbpCrt, kein XbpDialog, kein irgendwas. Also ganz einfach die normale DOS-Oberfläche die kommt, wenn man nichts einträgt. Da ich aber wie beschrieben einige GUI-Elemente eingebaut habe, die auf einer als OEM estellen Anwendung nicht laufen würden, ist das al GUI=yes kompiliert. Alle Einstellungen in der betreffenden Sektion der xpj lauten:
Code: Alles auswählen
COMPILE = xpp
COMPILE_FLAGS = /ga /b /q
DEBUG_SAVE = yes
GUI = yes
LINKER = alink
LINK_FLAGS = /debug
RC_COMPILE = arc
RC_FLAGS = /v
OBJ_DIR = .\Obj
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- brandelh
- Foren-Moderator
- Beiträge: 15696
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Siehst du JAN, wenn DU nichts machst, außer GUI=YES zu setzen, dann wir automatisch die AppSys.PRG eingebunden und die ruft dann automatisch XbpCrt() auf.
Dies unterscheidet sich in einigen Dingen von einer "richtigen" DOS Oberfläche (richtig ist consolen Anwendung).
OEM ist der Zeichensatz, der auf allen 3 Arten möglich ist.
bei RootCrt() hat man in der Anwendung keinen Zugriff auf den verwendeten Zeichensatz, mit XbpCrt() kann man den einstellen.
UTF-8 müsste man eigentlich zuerst in UTF-16 (wide oder unicode) wandeln, dann in ANSI und nun eventuell dann nach OEM.
Möglich dass deine bzw. Alaskas Funktion dfas macht, aber wenn die Anzeige nicht stimmt könnte eine der Konvertierungen fehlen oder zuviel sein.
Es ist aber auch gut möglich, dass XbpHTML ... als ActiveX controll nicht sauber die Zeichensätze umsetzt.
Dies unterscheidet sich in einigen Dingen von einer "richtigen" DOS Oberfläche (richtig ist consolen Anwendung).
OEM ist der Zeichensatz, der auf allen 3 Arten möglich ist.
Code: Alles auswählen
PROCEDURE AppSys()
...
LOCAL oCrt, nAppType := AppType()
...
DO CASE
// Anwendung wurde im PM Modus gelinkt, eine XbpCrt Instanz
// ist zu erzeugen.
CASE nAppType == APPTYPE_PM
...
// XbpCRT-Fenster erzeugen
oCrt := XbpCrt():New ( NIL, NIL, aPos, DEF_ROWS, DEF_COLS )
oCrt:FontWidth := DEF_FONTWIDTH
oCrt:FontHeight := DEF_FONTHEIGHT
oCrt:title := AppName()
oCrt:FontName := "Alaska Crt"
...
SetAppWindow ( oCrt )
// Anwendung wurde im VIO oder NOVIO Modus gelinkt, eine RootCrt
// Instanz ist zu erzeugen.
CASE nAppType == APPTYPE_VIO .OR. nAppType == APPTYPE_NOVIO
// RootCrt Instanz erzeugen.
//
// Die IVar :CreateBuffer bestimmt wie sich das RootCrt verhaelt
// wenn es in einem Shell Fenster erzeugt wird.
//
// :CreateBuffer == .T. : Das RootCrt wird einen eigenen Bildschirm
// Puffer erzeugen der dann fuer die Darstellung
// verwendet wird. Dies hat zur Folge das
// Ausgaben mit OutStd() nicht mit anderen
// Text Ausgaben (z.B: Qout(), Dispbox() gemischt
// werden koennen.
// :CreateBuffer == .F. : Es wird kein eigener Bildschirm Puffer erzeugt
// und der des Shell Fensters verwendet. OutStd()
// Ausgaben werden nun gleichzeitig dargestellt.
oCrt := RootCrt():New()
oCrt:CreateBuffer := .T.
oCrt:Create()
// RootCrt wird aktives Fenster und Ausgabeger„t.
SetAppWindow ( oCrt )
ENDCASE
RETURN
// EOF
UTF-8 müsste man eigentlich zuerst in UTF-16 (wide oder unicode) wandeln, dann in ANSI und nun eventuell dann nach OEM.
Möglich dass deine bzw. Alaskas Funktion dfas macht, aber wenn die Anzeige nicht stimmt könnte eine der Konvertierungen fehlen oder zuviel sein.
dann müsste der ANSI Text noch nach OEM umgesetzt werden ...JAN hat geschrieben:Was ich mache ist also, das ich in der Mail nachsehe, ob im Header ein "charset=utf-8" drin steht.
Wenn ja, dann mache ich ein UTF8ToAnsi() auf den Text.
Die Funktion habe ich vor Jahren mal von Günter Beyes bekommen, und setze die andernorts mit Erfolg ein.
Es ist aber auch gut möglich, dass XbpHTML ... als ActiveX controll nicht sauber die Zeichensätze umsetzt.
Gruß
Hubert
Hubert
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Darstellung einer UTF-8-Mail
Interessante Idee.Jan hat geschrieben:Ich möchte gerne in einem XbpHTMLViewer() Mailtexte anzeigen.
einen "fertigen" HTML Editor von Diego Kerejeta, mit native Toolbar / Statusbar, findest du in den Sample Toolbar von der DXE LIB
ich habe die Function von Günter Beyes ebenfalls für "UTF-8" Email getestet, welche ich mit Xbsee empfangen hatte, und ähnliche Probleme mit den "Umlauten".Jan hat geschrieben:Was ich mache ist also, das ich in der Mail nachsehe, ob im Header ein "charset=utf-8" drin steht. Wenn ja, dann mache ich ein UTF8ToAnsi() auf den Text. Die Funktion habe ich vor Jahren mal von Günter Beyes bekommen, und setze die andernorts mit Erfolg ein.
auch Pablos cUTF8ToAnsi() "allein" brachte nicht das gewünschte Ergebnis. ich habe dann von Pablo die AtlEnc.dll*** bekommen um sie richtig zu decodieren.
Code: Alles auswählen
DO WHILE .T.
nAnfang := AT("=?UTF-8?B?",cUTF8,nNext)
IF nAnfang > 0
nEnde := AT("?=",cUTF8,nAnfang )
IF nEnde > 0
cMime := SUBSTR(cUTF8,nAnfang,nEnde-nAnfang)
cMime := STRTRAN(cMime,"=?UTF-8?B?","")
? FromBase64(cMime)
cNext += FromBase64(cMime)
...
FUNCTION FromBase64(cBase64)
LOCAL RETVAR
// OEM
RETVAR := cUtf8ToOem( cBase64Decode(cBase64) )
// ANSI
*RETVAR := cUtf8ToAnsi( cBase64Decode(cBase64) )
RETURN RETVAR
//
// AtlEnc.DLL Function Base64Decode()
//
FUNCTION cBase64Decode( cSrc )
local nSrcLen := Len( cSrc )
local nDstLen := Base64DecodeGetRequiredLength(nSrcLen)
local cDst := ChrR(0,nDstLen)
if Base64Decode(cSrc,nSrcLen,@cDst,@nDstLen)
return Left(cDst,nDstLen)
end
return NIL
public.xbase++.asinet
11. September 2008
gruss by OHR
Jimmy
Jimmy
- brandelh
- Foren-Moderator
- Beiträge: 15696
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
denau, die eMail könnte zunächst base64 codiert sein ... also zunächst mit einem UTF-8 fähigen Editor prüfen ob die auch schon UTF-8 ist.
aber wenn schon, dann den Zeichensatz abfragen und nicht manuell umstellen ,,,Code: Alles auswählen
FUNCTION FromBase64(cBase64) LOCAL RETVAR // OEM RETVAR := cUtf8ToOem( cBase64Decode(cBase64) ) // ANSI *RETVAR := cUtf8ToAnsi( cBase64Decode(cBase64) ) RETURN RETVAR
Code: Alles auswählen
*--------------------------------------------------------------------------------
function IsOEM()
return ( set(_SET_CHARSET) = 1 )
*--------------------------------------------------------------------------------
function IsAnsi()
return ( set(_SET_CHARSET) = 0 )
Gruß
Hubert
Hubert
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Darstellung einer UTF-8-Mail
@Jan
noch was : probiere mal eine Mail mit XbpHTMLViewer() zu erstellen welche äöüÄÖÜß enthält, abspeichern und wieder laden ... mal sehen ob du dann die Umlaute noch hast !!!
noch was : probiere mal eine Mail mit XbpHTMLViewer() zu erstellen welche äöüÄÖÜß enthält, abspeichern und wieder laden ... mal sehen ob du dann die Umlaute noch hast !!!
gruss by OHR
Jimmy
Jimmy
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2828
- Registriert: Fr, 10. Feb 2006 9:51
- Wohnort: Aachen
- Hat sich bedankt: 259 Mal
- Danksagung erhalten: 12 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Hubert,
ich bewundere Deine Geduld mit Jan
ich bewundere Deine Geduld mit Jan
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
Mitglied XuG Cologne
Mitglied XuG Osnabrück
- Jan
- Marvin
- Beiträge: 14653
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Jimmy,
der Pfad zum Download auf Pablos Homepage ist leider nicht mehr gültig (404). Ich hab ihn mal angemailt, ob es die dll noch gibt. Oder ob er das in die ot4xb mit eingebaut hat. Mal schauen, was er dazu sagt.
Jan
der Pfad zum Download auf Pablos Homepage ist leider nicht mehr gültig (404). Ich hab ihn mal angemailt, ob es die dll noch gibt. Oder ob er das in die ot4xb mit eingebaut hat. Mal schauen, was er dazu sagt.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- brandelh
- Foren-Moderator
- Beiträge: 15696
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Hat nicht Alaska code dazu rausgegeben ?
Ich meine im Büro sowas gespeichert zu haben ...
Ich meine im Büro sowas gespeichert zu haben ...
Gruß
Hubert
Hubert
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Darstellung einer UTF-8-Mail
der Verweis geht die Alaska NewsgroupJan hat geschrieben:der Pfad zum Download auf Pablos Homepage ist leider nicht mehr gültig (404). Ich hab ihn mal angemailt, ob es die dll noch gibt. Oder ob er das in die ot4xb mit eingebaut hat. Mal schauen, was er dazu sagt.
*** SEE32 / Subject / UTF-8 ?
public.xbase++.asinet
11. September 2008
gruss by OHR
Jimmy
Jimmy
- Jan
- Marvin
- Beiträge: 14653
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Darstellung einer UTF-8-Mail
Ich habe von Pablo eine kurze Funktion bekommen, die genau das Richtige macht. Ich brauch dazu nur die normale ot4xb, keine zusätzliche DLL.
Übergeben werden muß der von UTF8 nach ANSI konvertierte String.
Jan
Code: Alles auswählen
FUNCTION rfc2047decode(cSrc)
LOCAL cb := 0
LOCAL p := @ot4xb:rfc2047decode(__vstr(cSrc,""), @cb, 0, 0)
LOCAL cc
IF p == 0
RETURN NIL
ENDIF
cc := PeekStr(p, 0, cb)
_xfree(p)
RETURN TrimZ(cc)
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.