Soweit ich rausgefunden habe stürzt das Programm beim Login in den
SMTP Server ab.
Delphi-Quellcode:
login_SMTP(SetUp.Username,SetUp.Passwort,SetUp.SMTPServer,SetUp.SMTPPOrt,SMTPSocket); sendMessage(SetUp.Username,SetUp.Passwort,SetUp.SMTPServer,SetUp.SMTPPort,2,SetUp.Username,Edit2.Text,Attachment,toMail,Richedit1,SMTPSocket);
//sendMessage(Username,PW,Server : String;Port, Priority : Integer; fromMail,Betreff: String;Anhang : TStringList;toMail : TStringList;Nachricht : TRichEdit; SMTPSocket : TIdSMTP);
logoff_SMTP(SMTPSocket);
beim SendMessage stürzt es ab.
SendMessage ist es wie folgt definiert:
Delphi-Quellcode:
function login_SMTP(Username,PW,Server : String;Port : Integer; SMTPSocket : TIdSMTP):boolean;
begin
if SMTPSocket.Connected then
SMTPSocket.Disconnect();
SMTPSocket.Username := Username;
SMTPSocket.Password := PW;
SMTPSocket.Port := Port;
SMTPSocket.Host := Server;
SMTPSocket.AuthType := satDefault;
SMTPSocket.Connect;
Result := SMTPSocket.Connected;
end;
procedure logoff_SMTP(SMTPSocket : TIdSMTP);
begin
SMTPSocket.Disconnect();
end;
procedure sendMessage(Username,PW,Server : String;Port, Priority : Integer; fromMail,Betreff: String;Anhang : TStringList;toMail : TStringList;Nachricht : TRichEdit; SMTPSocket : TIdSMTP);
var IdNachricht : TIdMessage;
i : integer;
s : String;
IdAnhang : TIdAttachmentFile;
begin
if login_SMTP(Username,PW,Server,Port,SMTPSocket) = true then
begin
IdNachricht := TIdMessage.Create(nil);
with TIdText.Create(IdNachricht.MessageParts, nil) do
begin
ContentType := 'text/plain';
Body.Text := Nachricht.Text;
end;
s := '';
with IdNachricht do
begin
ContentType := 'multipart/*';
From.Text := fromMail;
ReplyTo.EMailAddresses := fromMail;
Subject := Betreff;
Priority := TIdMessagePriority(Priority);
s := BccList.EmailAddresses;
for i := 0 to toMail.Count -1 do
begin
s := s+ toMail.Strings[i];
end;
BccList.EMailAddresses := s;
end;
if Anhang.Count >= 1 then
begin
for i := 0 to Anhang.Count -1 do
IdAnhang := TIdAttachmentFile.Create(IdNachricht.MessageParts,Anhang[i]);
// IdAnhang.StoredPathName:=Anhang_Pfad.Strings[i];
// IdAnhang.Filename := Anhang_Datei.Strings[i];
// IdAnhang.OpenLoadStream;
// IdAnhang.CloseLoadStream;
end;
try SMTPSocket.Send(IdNachricht)
finally logoff_SMTP(SMTPSocket); end;
//SMTPSocket.Free;
end;
end;
end.
ich probiere den
SMTP-Server von googlemail aus.
Als ich probiert hatte mit Web.DE
SMTP-Server, kam die Fehlermeldung "bad sequenced commands".
Kann es sein, dass es am
SMTP-Server liegt?