Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Email mit Shellexecute (https://www.delphipraxis.net/187407-email-mit-shellexecute.html)

Pfl 26. Nov 2015 22:02

Email mit Shellexecute
 
Hi, ich weiß es gibt einiges zu dem Thema... aber ich bin nciht so recht aus den Angeboten schlau geworden... . Kann mir jemand sagebn, wie ich den Ihalt von Edit. und Memofeldern in eine Mail bekomme?

kann das so funzen:
Delphi-Quellcode:
      pchar('mailto:f.pfeil@outlook.com?subject=Bewertung Vortrag&body=Kritik: '
      + mailtext.Lines.Text), nil, nil, SW_SHOWNORMAL);
Vielen Dank

LG

nahpets 27. Nov 2015 12:00

AW: Email mit Shellexecute
 
Meinst Du sowas? http://www.labnol.org/internet/email...o-syntax/6748/ (letztes Beispiel)

Es soll per Shellexecute das Mailprogramm gestartet werden?
Oder willst Du die Mail per Kommandozeile verschicken?
Wenn 2., dann schau Dir mal Blat an.

Perlsau 27. Nov 2015 12:23

AW: Email mit Shellexecute
 
Die dritte Möglichkeit bestünde darin, die Mails direkt aus der Anwendung an den SMTP-Server zu schicken, wie ich das z.B. in meiner Adressverwaltung mit Serienbrief-Funktion handhabe. Dazu wirft man einfach jeweils eine TIdMessage- und eine TIdSMTP-Komponente aufs Formular und "bestückt" deren Properties entsprechend:
Delphi-Quellcode:
Procedure Form1.Emailversand(Sender: TObject);
begin
  IdSMTP1.Host          := E_Host;
  IdSMTP1.Password      := E_Passwort;
  IdSMTP1.Username      := E_Benutzer;
  IdMessage1.From.Text  := E_Benutzer;
  IdMessage1.Sender.Text := E_Absender;
  IdMessage1.Subject    := E_Betreff;
  IdMessage1.Body       := Memo_Email.Lines;
  IDMessage1.Recipients.EMailAddresses := E_Empfaenger;

  IdSMTP1.Connect;
  IdSMTP1.Send(IdMessage1);
  IdSMTP1.Disconnect;
end;
Hinweis: Ungetestet und absichtlich ohne Fehlerbehandlung. TIdMessage ist auf der Indy-Palette Misc zu finden, TIdSMTP bei den Clients.

TiGü 27. Nov 2015 13:14

AW: Email mit Shellexecute
 
Von: http://www.martinstoeckli.ch/delphi/delphi.html

Delphi-Quellcode:
procedure Sto_OpenMail(const Address: String; const Subject: String = '';
  const Body: String = ''; const Cc: String = ''; const Bcc: String = '');
var
  slParameters: TStrings;
  sMailCommand: String;
  iParameter: Integer;
begin
  slParameters := TStringList.Create;
  try
  if (Subject <> '') then
    slParameters.Add('subject=' + Sto_UrlEncode(Subject));
  if (Body <> '') then
    slParameters.Add('body=' + Sto_UrlEncode(Body));
  if (Cc <> '') then
    slParameters.Add('cc=' + Cc);
  if (Bcc <> '') then
    slParameters.Add('bcc=' + Bcc);
  // bring parameters into a form like:
  // mailto:<address>?subject=<subjectline>&body=<mailtext>&cc=<address>&bcc=<address>
  sMailCommand := 'mailto:' + Address;
  for iParameter := 0 to slParameters.Count - 1 do
  begin
    if (iParameter = 0) then
      sMailCommand := sMailCommand + '?'
    else
      sMailCommand := sMailCommand + '&';
    sMailCommand := sMailCommand + slParameters.Strings[iParameter];
  end;
  ShellExecute(0, 'open', PChar(sMailCommand), nil, nil, SW_SHOWNORMAL);
  finally
    slParameters.Free;
  end;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:54 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz