Einzelnen Beitrag anzeigen

Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.099 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Indy SMTP Email wie Body encoding setzen

  Alt 20. Feb 2018, 21:36
Hallo Matthias,

perfekt. Jetzt funktioniert alles mit und ohne Anhang.


Delphi-Quellcode:
procedure TForm3.Button1Click(Sender: TObject);
const aFile='F:\A02-6176_1.jpg';
var Attachment : TIdAttachment;
    sBody:string;
    lTextPart: TIdText;
    WithImage:Boolean;
begin
  idSMTP.Host := 'mail.server.de';
  idSMTP.Username := 'user';
  idSMTP.Password := 'pwd';
  idSMTP.Port := 25;
  idSMTP.Connect;

  idMessage.Clear;

  WithImage := True;

  idMessage.From.text := 'kostas@server.de';
  idMessage.Sender.text := idMessage.From.text;
  idMessage.Recipients.EMailAddresses := 'kostas@server.de';
  idMessage.CCList.EMailAddresses := '';
  idMessage.BccList.EMailAddresses := '';
  idMessage.Subject := 'Umlaute öäüß ÖÄÜ';


  if WithImage then
  begin
    idMessage.ContentType:='multipart/mixed';
    idMessage.ContentTransferEncoding:='8bit';

    idMessage.Body.Clear;

    lTextPart := TIdText.Create(idMessage.MessageParts);
    lTextPart.Body.Text := 'Umlaute öäüß ÖÄÜ';
    lTextPart.ContentType := 'text/plain; charset=utf-8; format=flowed';
    lTextPart.ContentTransfer := '8bit';

    with TIdAttachmentFile.Create( idMessage.MessageParts, aFile ) do
    begin
      idMessage.MessageParts.Add;
    end;
  end else
  begin

    idMessage.ContentType:='text/plain; charset=utf-8; format=flowed';
    idMessage.ContentTransferEncoding:='8bit';

    idMessage.Body.Add('Umlaute öäüß ÖÄÜ');

  end;


  idSMTP.Authenticate;
  idSMTP.Send( idMessage );


  idSMTP.Disconnect;


end;

Herzlichen Dank an alle.
Gruß Kostas
  Mit Zitat antworten Zitat