|
|
|
|
Autor
|
Nachricht |
|
|
Sourcemaker |
#1|Verfasst am: 09.02.2006, 19:02 Titel: HTML-Mail erzeugen basierend auf Emsländers Tutorial |
|
|
|
|
Mitglied Alter: 39 Status: offline Beiträge: 212 angemeldet: 03.09.2003 Wohnort: Westoverledingen Delphi 7 Professional
|
Sprache: Delphi (Win32)
Hi,
ich habe das Beispiel von Emsländer soweit nachgestellt habe aber
das Problem das die Anhänge zwar beim öffnen der Mail vorhanden und
auch richtig dargestellt werden aber in der Übersicht das Zeichen
Anhang (Büroklammer) nicht angezeigt wird.
Delphi-Quellcode: |
zusammenfalten | markieren |
1 · · · 5 · · · · 10 · · · · 15 · · · · 20 · · · · 25 · · · · 30 · · · · 35 · · · · 40 · · · · 45 · · · · 50 · · · · 55 · · · · 60 · · · · 65 · · · · 70 · · · · 75 · · · 79
|
IdMsgSend.From.Text := Trim(edUserId.Text)+' '+Trim(edFromAdress.Text);
IdMsgSend.ReplyTo.EMailAddresses := Trim(edFromAdress.Text);
IdMsgSend.Subject := edSubject.Text;
IdMsgSend.Recipients.Clear;
if cbESMTP.Checked then
begin
for i := 0 to meToAddress.Lines.Count-1 do
with IdMsgSend.Recipients.Add do
begin
Name := CharRem(#10+#13+';',meToAddress.Lines[i]);
Address := CharRem(#10+#13+';',meToAddress.Lines[i]);
end;
end
else IdMsgSend.Recipients.EMailAddresses := CharRem(#10+#13,meToAddress.lines.Text);
IdMsgSend.CCList.Clear;
if cbESMTP.Checked then
begin
for i := 0 to edToCarbonCopy.Lines.Count-1 do
with IdMsgSend.CCList.Add do
begin
Name := '';
Address := CharRem(';',edToCarbonCopy.Lines[i]);
end;
end
else IdMsgSend.CCList.EMailAddresses := edToCarbonCopy.lines.Text;
IdMsgSend.BccList.Clear;
if cbESMTP.Checked then
begin
for i := 0 to meToBlindCarbonCopy.Lines.Count-1 do
with IdMsgSend.BccList.Add do
begin
Name := '';
Address := CharRem(';',meToBlindCarbonCopy.Lines[i]);
end;
end
else IdMsgSend.BccList.EMailAddresses := meToBlindCarbonCopy.lines.Text;
IdMsgSend.MessageParts.Clear;
with TIdText.Create(IdMsgSend.MessageParts, nil) do
ContentType := 'multipart/related';
with TIdText.Create(IdMsgSend.MessageParts, nil) do
begin
ContentType := 'multipart/alternative';
ParentPart := 0;
end;
with TIdText.Create(IdMsgSend.MessageParts, nil) do
begin
Body.Text := edText.Text;
CharSet := 'iso-8859-1';
ContentTransfer := 'quoted-printable';
ContentType := 'text/plain';
ParentPart := 1;
end;
with TIdText.Create(IdMsgSend.MessageParts, nil) do
begin
x := TStringList.Create;
JvRichEditToHtml.ConvertToHtmlStrings(edText,x);
Body.Text := x.Text;
x.Free;
CharSet := 'iso-8859-1';
ContentTransfer := 'quoted-printable';
ContentType := 'text/html';
ParentPart := 1;
end;
IdMsgSend.ContentType := 'multipart/related; type="text/html"';
for i := 0 to lbAttachment.Items.Count-1 do
with
TIdAttachmentFile.Create(IdMsgSend.MessageParts,
CharRem(#10+#13,lbAttachment.Items[i]))
do
begin
//ContentType := 'application/ms-excel';
//ParentPart := 1;
end;
try
SMTP.Send(IdMsgSend);
IdMsgSendSuccess(Sender); |
|
Ich habe auch schon mit den ParentParts gespielt hatte aber auch keinen Erfolg.
Wenn ich das auskommentierte
Delphi-Quellcode: |
markieren |
with TIdText.Create(IdMsgSend.MessageParts, nil) do
begin
ContentType := 'multipart/alternative';
ParentPart := 0;
end; |
|
und die anderen ParentParts auf 0 setzte wurde zwar der Anhang richtig angezeigt aber auch
gleichzeitig der HTML-Teil ebenfalls als Anhang beigefügt.
Die HTML-Konvertierung mit JvRichEditToHtml.ConvertToHtmlStrings scheint auch nur halb zu
funktionieren da die Fonts um einigen Zeichen versetzt dargestellt werden.
Als Attachment habe ich die entstandene Mail hinzugefügt.
Grüße
Frank |
[ An diesen Beitrag wurden eine oder mehrere Dateien angehängt. Zum Herunterladen bitte anmelden. ] |
Zuletzt bearbeitet von Sourcemaker am 10.02.2006, 10:54, insgesamt 1-mal bearbeitet. |
|
|
|
|
|
|
|
|
Sourcemaker |
#3|Verfasst am: 09.02.2006, 19:36 Titel: Re: HTML-Mail erzeugen basierend aus Emsländers Tut |
|
|
|
|
Mitglied Alter: 39 Status: offline Beiträge: 212 angemeldet: 03.09.2003 Wohnort: Westoverledingen Delphi 7 Professional
|
Hi Luckie,
kannst Du Deine Frage präzisieren ?
Meinst Du das jetzt auf den Sourcecode bezogen das ich da etwas vergessen habe
oder meinst Du das Ergebnis (das kannst Du in meinen Attachment sehen) ?
Nach meinen Vergleichen mit anderen Mails sah zumindest die Attachmentsektion
gleich aus.
Grüße
Frank |
|
|
|
|
|
|
|
|
|
Sourcemaker |
#5|Verfasst am: 09.02.2006, 19:49 Titel: Re: HTML-Mail erzeugen basierend aus Emsländers Tut |
|
|
|
|
Mitglied Alter: 39 Status: offline Beiträge: 212 angemeldet: 03.09.2003 Wohnort: Westoverledingen Delphi 7 Professional
|
Wenn die Mail mit Outlook Express geöffnet wird sieht sie normal aus nur in der Posteingangs-
übersicht fehlt die Büroklammer.
Zum Testen hatte ich mir die Mail nach web.de gesandt und da wurde zwar
die Mailgröße noch richtig angezeigt aber keinerlei Attachment.
Ich hoffe das beantwortet Deine Frage ?
Grüße
Frank |
|
|
|
|
|
|
emsländer |
#6|Verfasst am: 19.02.2006, 22:24 Titel: Re: HTML-Mail erzeugen basierend auf Emsländers Tutorial |
|
|
|
|
Mitglied Alter: 44 Status: offline Beiträge: 316 angemeldet: 21.08.2004 Wohnort: Lengerich Delphi 2005 Enterprise
|
Sourcemaker hat folgendes geschrieben: |
und die anderen ParentParts auf 0 setzte wurde zwar der Anhang richtig angezeigt aber auch
gleichzeitig der HTML-Teil ebenfalls als Anhang beigefügt.
Die HTML-Konvertierung mit JvRichEditToHtml.ConvertToHtmlStrings scheint auch nur halb zu
funktionieren da die Fonts um einigen Zeichen versetzt dargestellt werden.
Als Attachment habe ich die entstandene Mail hinzugefügt.
Grüße
Frank |
Lass mal schön die Finger von den Parents
!! Somit verdrehst Du die Mail und die Verschachtelungen klappen nicht
mehr. Diese haben mit den Attachements auch nix zu tuen.
und den: //ContentType := 'application/ms-excel'; gibts bei Mail nicht
ich werd mal was über Mails raussuchen -- so ein paar Tonnen Dokus *ggg*
Als ich anfing dieses Ding zu programmieren, hab ich auch übelst über
die Deppen, die das Mailprotokoll gebaut haben geflucht! Da sieht man
das das Zeug von *ix Fricklern zusammengebastelt worden ist.
Umständlicher gehts nimmer.
Gruss
EL |
Narben am Körper sind ein Zeichen dafür, das man gelebt hat.
Narben auf der Seele sind ein Zeichen dafür, das man geliebt hat. Zuletzt bearbeitet von emsländer am 19.02.2006, 22:26, insgesamt 1-mal bearbeitet. |
|
|
|
|
|
|
|
|
|
|
|
|
|