Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

AW: Mailversand mit Indy geht nur einmal

  Alt 1. Aug 2012, 16:58
Es hat wohl keiner Lust uns den Inhalt der Fehlermeldung zu nennen?

Aber was ist das bitte für eine Speicherschutzbehandulng, mit dem Try Except?
Delphi-Quellcode:
procedure TMSFmDruckeUndExport.MailmitIndy;
var
 pBody: TStringList;
 pAttachment: TIdAttachmentFile;
begin
  pBody := TStringList.Create;
  try
    //pBody.Clear; ist noch leer
    pBody.Add('Hallo');
 
    idsmtp1.Host := 'XXXXXX.XXXXXXX.de';
    idsmtp1.Username := 'XXX@XXXXXXXX.de';
    idsmtp1.Password := 'XXXXXXXX';
    idsmtp1.Port := 25;

    idmsg1.Clear;
    idmsg1.ClearBody;
    idmsg1.ClearHeader;
    idmsg1.From.Text := 'bps@bps-nienburg.de';
    idmsg1.Sender.Text := 'ich bins';
    idmsg1.Recipients.EMailAddresses := 'verkauf@bps-nienburg.de';
    idmsg1.Subject := 'testmail';
    idmsg1.Body := pBody;
    pAttachment := TIdAttachmentFile.Create(idmsg1.MessageParts, 'd:\erntetag2012.jpg');
    try
      idsmtp1.Connect;
      idsmtp1.Send(idmsg1);
      idsmtp1.Disconnect();
    finally
      pAttachment.Free;
    end;
  finally
    pBody.Free;
  end;
end;
Und eventuell um Alles noch ein Try-Except drumrum.
Delphi-Quellcode:
try

  ...

except
  on E: Exception do begin
    //ShowMessage(E.Message);
    E := 'Fehler beim Versenden der Mail.' + sLineBreak + sLineBreak + E.Message;
    raise;
  end;
end;
PS: Was mag wohl passieren, wenn es zwischen dem Try und Except, bei einem der Free knallt?
$2B or not $2B

Geändert von himitsu ( 1. Aug 2012 um 17:05 Uhr) Grund: Wie konnte ich nur [quote] statt [delphi] schreiben?
  Mit Zitat antworten Zitat