Einzelnen Beitrag anzeigen

Benutzerbild von emsländer
emsländer

Registriert seit: 21. Aug 2004
Ort: Lengerich
658 Beiträge
 
RAD-Studio 2009 Ent
 
#2

Re: Email mit Indy verschicken

  Alt 15. Dez 2005, 18:33
Zitat von Chrissi91:
Hallo,

dieses Thema wurde zwar schon oft erklärt und erwähnt, jedoch bin ich mir nicht ganz sicher.
Ich möchte eine Email versenden. Jetzt fehlen mir die Grundkenntnisse. Ich habe meinen Emailaccount bei http://www.web.de. Brauche ich jetzt einen Pop3 Server und einen SMTP Server, ohne nur einen von beiden?
Falls jemand einen Link zur Demo für die Indy's hat, wäre ich sehr glücklich. Diese sollte mit Delphi 7 kompilierbar und mit Indy 10 geschrieben sein.
Als nächste Frage stellt sich, wie ich gleichzeitig an 10 Leute schreiben kann. Zwar könnte ich das in eine For-Schleife packen, aber es gibt sicherlich eine resourcensparendere Möglichkeit, oder?

Danke schon im Vorraus.
Du brauchst zum Versenden nur die smtp Komponente(und nat. auch ein Msg). Für mehrere Kopien solltest Du die als bcc adden.
Such mal hier im Forum. Ich hab dazu schon mal was gepostet. Aber ich mach hier mal nen Schmalspur Code rein:
Email ist eine TIdMessage Komponente
idsmtp die smtp Komponente
daran denken, das der Zielserver evtl. Username und PW braucht (kannst im Objektinspektor eintragen, ebenso den Host)

Delphi-Quellcode:
procedure TFDMailer.startClick(Sender: TObject);
var Email: TIdMessage;

begin
    s := 0;
    Email := TIdMessage.Create(nil);
    Email.Recipients.Clear;
    Email.Recipients.Add.Address := edit4.text;
    Email.BccList.Add.Address := bccedit1.text; (hier musst die BCCs reinpacken);
    Email.BccList.Add.Address := bccedit2.text;
    . ....
    Email.from.Text := edit3.text;
    Email.From.Name := edit2.Text;
    Email.From.Address := edit1.text;
    Email.Subject := T_betreff.Text;
    email.Date := Now;

    with TIdText.Create(email.MessageParts, nil) do begin
      Body.Text := mailbody.Text;
      CharSet := 'iso-8859-1';
      ContentTransfer := 'quoted-printable';
      ContentType := 'text/plain';
      ParentPart := -1;
    end;
    with TIdText.Create(email.MessageParts, nil) do
    begin
        Body.Text := mailbody.asansistring('html');
        CharSet := 'iso-8859-1';
        ContentTransfer := 'quoted-printable';
        ContentType := 'text/html';
        ParentPart := -1;
    end;
    if trim(gdateiname) <> 'then TIdAttachmentfile.Create(email.MessageParts, gdateiname);
    idsmtp.Connect;
    try
      idsmtp.Send(Email);
      idsmtp.Disconnect;
    except
      idsmtp.Disconnect;
    end;
    showmessage('Mail wurde verschickt');
end;
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.
  Mit Zitat antworten Zitat