Einzelnen Beitrag anzeigen

Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

EMail Versand via GMX

  Alt 29. Okt 2010, 12:13
hallo zusammen,

ich versuche gerad in delphi eine funktion zu basteln über die ein programm automatisch e-mails versenden kann...

im moment teste ich das ganze über mein gmx postfach...

anbei erst mal der source von meiner e-mail funktion:

Code:
function fnSendEMail(sHost, sUsername, sPassword, sFrom, sSenderEMail, sReceipt,
                       sSubject, sAttachment : String; strlBody : TStrings;
                       iPort : Integer) : Boolean;

var
idAttachment : TIdAttachmentFile;
idMessage    : TIdMessage;
SMTP         : TIdSMTP;

begin

  Result := True;

  //Create TIdSMTP and TIdMessage Componente
  SMTP := TIdSMTP.Create();
  idMessage := TIdMessage.Create();

  //Configure SMPTP
  SMTP.Host := sHost;
  SMTP.Username := sUsername;
  SMTP.Password := sPassword;
  SMTP.Port := iPort;

  //Configure idMessage
  idMessage.From.Text := sFrom;
  idMessage.Sender.Text := sSenderEMail;
  idMessage.Recipients.EMailAddresses := sReceipt;
  idMessage.Subject := sSubject;

  idMessage.Body.Clear;
  idMessage.Body := strlBody;

  //Attach Files
  If sAttachment <> EmptyStr Then
  Begin
    If FileExists(sAttachment) = True Then
    Begin
      idAttachment := TIdAttachmentFile.Create(idMessage.MessageParts, sAttachment);
    End;
  End;

  //Send E-Mail
  Try
    Try
      SMTP.Connect;
      SMTP.Send(idMessage);
      SMTP.Disconnect;
    Except
      Result := False;
      If SMTP.Connected = True Then
      Begin
        Try
          SMTP.Disconnect;
        Except
          MessageDlg('Could not disconnect from the E-Mail Server: ' + sHost, mtError, [mbOK], 0);
        End;
      End;
      MessageDlg('Could not send E-Mail to: ' + sReceipt, mtError, [mbOk], 0);
    End;
  Finally
    //Destroy TIdSMTP and TIdMessage Componente
    SMTP.Free;
    idMessage.Free;
  End;
folgende smtp daten übergebe ich an diese funktion:

smtp server: mail.gmx.net
port: hier habe ich die ports 25 und 465 ausprobiert

für den login habe ich meine e-mail adresse + passwort ausprobiert und auch die kunden nr. + passwort (so wie es in der gmx hilfe steht)

beim connect versuch erhalt eich dann immer den fehler:
Socket Error # 10060 Connection timed out

hat jemand eine idee woran das liegen könnte? habe ich einen fehler in meiner funktion?
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat