Hallo, Manfred Tremmel wrote:
Nach Studium des Sourcecodes von kmail konnte ich feststellen, dass dieses sehr wohl charset-Header erzeugen kann, wenn per Preprozessor CHARSETS gesetzt wird, was defaultmässig nicht der Fall ist. Eine compilierung mit diesen Einstellungen hat auch schnell gezeigt warum:
Ergo im Makefile von kmail (Paket knetwork-1.X.X / kmail-Unterverz.) kdenetwork-1.1.1/kmail/Makefile: Zeile 189 (a la diff): - DEFS = -DHAVE_CONFIG_H -I. -I$(srcdir) -I.. + DEFS = -DHAVE_CONFIG_H -DCHARSETS -I. -I$(srcdir) -I.. Der Kontext des Originals (zum finden bei anderen Versionen): ============================================ PROGRAMS = $(bin_PROGRAMS) DEFS = -DHAVE_CONFIG_H -DCHARSETS -I. -I$(srcdir) -I.. CPPFLAGS = ============================================ Am besten nach obigem "-DHAVE_CONFIG_H" oder auch nur "-D" suchen. [..]
Na gut, bin ich etwas rabiater vorgegangen, Zeile 627 in kmmessage.cpp
Bei mir (kdenetwork-1.1.1/kmail), Zeile 562:
- setHeaderField("Content-Type","text/plain");
+ setHeaderField("Content-Type","text/plain; charset=ISO-8859-1");
Der Kontext:
============================================
//----------------------------------------------------
void KMMessage::initHeader(void)
{
assert(identity != NULL);
if(identity->fullEmailAddr().isEmpty())
setFrom("");
else
setFrom(identity->fullEmailAddr());
if(identity->replyToAddr().isEmpty())
setReplyTo("");
else
setReplyTo(identity->replyToAddr());
if (identity->organization().isEmpty())
removeHeaderField("Organization");
else
setHeaderField("Organization", identity->organization());
setTo("");
setSubject("");
setDateToday();
#ifdef KRN
setHeaderField("X-NewsReader", "KRN http://ultra7.unl.edu.ar");
#else
setHeaderField("X-Mailer", "KMail [version " KMAIL_VERSION "]");
#endif
// This will allow to change Content-Type:
setHeaderField("Content-Type","text/plain");
}
============================================
Hier ist die letzte Zeile (562) vor dem finalen "}" der Funktion
"void KMMessage::initHeader(void)" die Interessante!
CU
David
--
E-Mail: David Haller