Das ist schon ca. vier Jahre her und war eine Riesenplackerei, aber wenn's mal funkt, dann funkt's prima.
Aus legalen Gründen muss ich da viel auslassen, aber es geht ungefähr so ...
Hoffe, das hilft!
Delphi-Quellcode:
IdSMTP1 := TIdSMTP.Create(Self);
IdSMTP1.
Name := '
MeinTollesMailSystem';
IndyMessage := TIdMessage.Create(Self);
slAttachments := TStringList.Create;
try
slAttachments.CommaText := '
DateiEins.txt';
// Message-Objekt initialisieren:
IndyMessage.Clear ;
IndyMessage.MessageParts.clear ;
IndyMessage.ClearBody ;
//====================
with TIdMessageBuilderHtml.Create
do
try
PlainText.Text := '
das will ich jetzt sagen: ... ';
Attachments.Assign(slAttachments);
FillMessage(IndyMessage);
finally
Free;
end;
//====================
// WICHTIG: das alles muss unbedingt NACH dem TIdMessageBuilderHtml befüllt werden!
IndyMessage.Subject := '
blah';
IndyMessage.From.Address := '
me';
IndyMessage.From.
Name := '
connor';
... etc.
try
try
IdSMTP1.Host := '
blah';
IdSMTP1.Username := '
blah';
IdSMTP1.Password := '
blah';
IdSMTP1.Connect ;
IdSMTP1.Send (IndyMessage) ;
except
on e:
Exception do
begin
// irgendwas tun ...
end;
end;
finally
IdSMTP1.Disconnect ;
end;
finally
IdSMTP1.Free;
IdSMTP1 :=
nil;
IndyMessage.MessageParts.Clear;
IndyMessage.Headers.Clear;
IndyMessage.Free;
IndyMessage :=
nil;
slAttachments.Clear;
slAttachments.Free;
slAttachments :=
nil;
end;