Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Delphi Email (https://www.delphipraxis.net/148577-delphi-email.html)

xxsasch4xx 4. Mär 2010 14:21


Delphi Email
 
kann man sich von einem delphi programm durch einen klick auf den button eine email zuschicken lassen mit anhang eines bildes?

dominikkv 4. Mär 2010 14:24

Re: Delphi Email
 
Kommt drauf an, wie du das haben willst.

Email schicken über ein anderes EMailprogramm?
-> ShellExecute(0, 'open', 'mailto:bla@blub.de' usw);
-> MAPI

EMail schicken über eigenes Programm:
-> Indys
-> Diverse Komponenten

manfred_h 4. Mär 2010 14:35

Re: Delphi Email
 
Hallo

Für JEDI gibt es eine Demo "JvMail"

Shalom
Manfred

Andidreas 4. Mär 2010 14:51

Re: Delphi Email
 
über die TIdSMTP kannst alles machen was du möchtest

Delphi-Quellcode:
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;

DeddyH 4. Mär 2010 15:05

Re: Delphi Email
 
Aber dann bitte die Vergleiche auf true weglassen.

Sherlock 4. Mär 2010 15:11

Re: Delphi Email
 
Zitat:

Zitat von DeddyH
Aber dann bitte die Vergleiche auf true weglassen.

Weglassen wäre etwas...übereifrig. Sinnvoll ersetzen dürfte es besser treffen.
;)


Sherlock

DeddyH 4. Mär 2010 15:12

Re: Delphi Email
 
Ich meinte natürlich das "= true" und nicht die komplette Zeile :zwinker:

Andidreas 5. Mär 2010 11:07

Re: Delphi Email
 
was spricht denn bitte dagegen zu prüfe ob das attachment das hinzugefügt werden soll auch wirklich existiert???

SirThornberry 5. Mär 2010 11:13

Re: Delphi Email
 
Dagegen spricht nichts. Was damit gemeint ist:
True ist eine Constante welche 1 ist
In der IT ist jedoch alles ungleich 0 Wahr.
Niemand garantiert dir also das FileExists und andere Funktionen wirklich 1 (also True) im Erfolgsfall zurück geben. Definiert ist lediglich, dass sie "Wahr" zurückgeben, also ungleich 0.

[Edit]
also entweder so:
Delphi-Quellcode:
if FunktionWithBooleanResult() then
...
oder
Delphi-Quellcode:
if FunktionWithBooleanResult() <> False then
...

Bernhard Geyer 5. Mär 2010 14:10

Re: Delphi Email
 
Zitat:

Zitat von SirThornberry
Dagegen spricht nichts. Was damit gemeint ist:
True ist eine Constante welche 1 ist
In der IT ist jedoch alles ungleich 0 Wahr.
Niemand garantiert dir also das FileExists und andere Funktionen wirklich 1 (also True) im Erfolgsfall zurück geben. Definiert ist lediglich, dass sie "Wahr" zurückgeben, also ungleich 0.

:gruebel: Geht du hier nicht von einer schlechten C--Definiton der Art:

Code:
False = 0;
True = 1;
i.d.R macht man hier

Code:
False = 0;
True = !False;


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:17 Uhr.
Seite 1 von 2  1 2      

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