Textmail mit Anhang versenden?

Alle Fragen zur Netzwerkkommunikation

Textmail mit Anhang versenden?

Beitragvon TT73GP7 » 19. Dez 2016, 11:55 Textmail mit Anhang versenden?

hallo zusammen,

ich bin hier grade etwas am verzweifeln. Also ich muss aus unserer Anwendung textmails versenden. Nun ich habe mit Lazarus noch nie eine email versendet :(

gibt es da irgendwelche beispiele?
nach was muss ich da suchen?

ich habe hier nach smtp gesucht bin hier aber nocht so ernsthaft weitergekommen :(
und das schlimme ist ich weiß noch garnicht wie ich dann automatisch anhänge dranhängen soll :(

wo finde ich bespiele?
nach was muss ich suchen?

viele Grüße
:)
TT73GP7
 
Beiträge: 226
Registriert: 29. Mär 2016, 19:45

Beitragvon mschnell » 19. Dez 2016, 12:22 Re: Textmail mit Anhang versenden?

mschnell
 
Beiträge: 3216
Registriert: 11. Sep 2006, 09:24
Wohnort: Krefeld
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ) | 
CPU-Target: X32 / X64 / ARMv5
Nach oben

Beitragvon TT73GP7 » 19. Dez 2016, 12:28 Re: Textmail mit Anhang versenden?

sooo ich habe nun erstmal Sysnapse gefunden

und dazu ein beispiel:
http://wiki.freepascal.org/Synapse

nun muss ich noch rausfinden wie ich einen anhang dranbekomme?
hat da jemand ein beispiel zu?
TT73GP7
 
Beiträge: 226
Registriert: 29. Mär 2016, 19:45

Beitragvon theo » 19. Dez 2016, 12:46 Re: Textmail mit Anhang versenden?

TT73GP7 hat geschrieben:sooo ich habe nun erstmal Sysnapse gefunden

und dazu ein beispiel:
http://wiki.freepascal.org/Synapse

nun muss ich noch rausfinden wie ich einen anhang dranbekomme?
hat da jemand ein beispiel zu?


Steht ja in der von dir verlinkten Seite.
http://wiki.freepascal.org/Synapse#Sending_attachments

Resp: http://synapse.ararat.cz/doku.php/publi ... :tmimepart
theo
 
Beiträge: 8053
Registriert: 11. Sep 2006, 18:01

Beitragvon TT73GP7 » 19. Dez 2016, 13:36 Re: Textmail mit Anhang versenden?

hach anfangs klang alles so einfach :(

so ich habe nun das beispiel genommen aus dem Link
dazu habe ich eben bei 1und1 eine email adresse angelegt

so die email adresse geht auch
kann mich da einloggen alles gut

nur irgendwie kann sich das skript nicht einloggen :(
ich bekomme null fehlermeldung

es wird immer dieser Teil hier übersprungen :

Code: Alles auswählen
 
    if SMTP.Login then
    begin
      result := SMTP.MailFrom(MailFrom, Length(MailData)) and
                SMTP.MailTo(MailTo) and
                SMTP.MailData(sl);
      SMTP.Logout;
    end;
 


in den Variablen steht das richtige drin
also was mache ich falsch?


Code: Alles auswählen
 
function SendMail(MailTo, MailData: string): Boolean;
var
  SMTP          : TSMTPSend;
  sl            : TStringList;
  User          : String;
  Password      : String;
  MailFrom      : String;
  SMTPHost      : String;
  SMTPPort      : String;
 
begin
  User          := SQLData.Data.MailUser;
  Password      := SQLData.Data.MailPassword;
  MailFrom      := SQLData.Data.MailFrom;
  SMTPHost      := SQLData.Data.SMTPHost;
  SMTPPort      := SQLData.Data.SMTPPort;
 
 
  Result := False;
  SMTP   := TSMTPSend.Create;
  sl     := TStringList.Create;
  try
    sl.text:=Maildata;
    SMTP.UserName:=User;
    SMTP.Password:=Password;
    SMTP.TargetHost:=SMTPHost;
    SMTP.TargetPort:=SMTPPort;
    SMTP.AutoTLS:=true;
    if Trim(SMTPPort)<>'25' then
      SMTP.FullSSL:=true; // if sending to port 25, don't use encryption
    if SMTP.Login then
    begin
      result := SMTP.MailFrom(MailFrom, Length(MailData)) and
                SMTP.MailTo(MailTo) and
                SMTP.MailData(sl);
      SMTP.Logout;
    end;
  finally
    SMTP.Free;
    sl.Free;
  end;
end;
 
 
TT73GP7
 
Beiträge: 226
Registriert: 29. Mär 2016, 19:45

Beitragvon af0815 » 19. Dez 2016, 13:40 Re: Textmail mit Anhang versenden?

Schon mal versucht dich mit einem Terminal mit den Daten einzuloggen ? Da siehst du dann genau warum dich der Server nicht reinlässt, denn danach sieht es aus, wenn er über diesen Teil springt.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
af0815
 
Beiträge: 3413
Registriert: 7. Jan 2007, 10:20
Wohnort: Niederösterreich
OS, Lazarus, FPC: Win7/Linux (L stable FPC stable) per fpcup | 
CPU-Target: 32Bit (64Bit)
Nach oben

Beitragvon creed steiger » 19. Dez 2016, 16:27 Re: Textmail mit Anhang versenden?

creed steiger
 
Beiträge: 942
Registriert: 11. Sep 2006, 21:56

Beitragvon TT73GP7 » 19. Dez 2016, 18:12 Re: Textmail mit Anhang versenden?

af0815 hat geschrieben:Schon mal versucht dich mit einem Terminal mit den Daten einzuloggen ? Da siehst du dann genau warum dich der Server nicht reinlässt, denn danach sieht es aus, wenn er über diesen Teil springt.



das ist eine gute idee
ich prüfe das gleich nachen essen mal nach

ich würde halt gerne nee meldung haben :(
TT73GP7
 
Beiträge: 226
Registriert: 29. Mär 2016, 19:45

Beitragvon TT73GP7 » 19. Dez 2016, 19:23 Re: Textmail mit Anhang versenden?

also

essen war lecker und nun habe ich auch eine Fehlermeldung :)

Code: Alles auswählen
 
Ausnahme beim Aufrufen von "Send" mit 4 Argument(en)"Für den SMTP-Server ist eine sichere Verbindung erforderlich, o
der der Client wurde nicht authentifiziert. Die Serverantwort war: Authentication required"

Bei Zeile:1 Zeichen:17
+ $SMTPClient.Send <<<< ($EmailFrom, $EmailTo, $Subject, $Body)
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException
 


joar liegt wohl am Server
die frage ist nun wie stelle ich eine Sichereverbindung her?
TT73GP7
 
Beiträge: 226
Registriert: 29. Mär 2016, 19:45

Beitragvon TT73GP7 » 19. Dez 2016, 19:28 Re: Textmail mit Anhang versenden?

wenn ich das richtig verstanden habe wünscht sich der spass SSL

hab ich ja da der Port nicht 25 ist

SMTP.FullSSL:=true; // if sending to port 25, don't use encryption

oder bin ich da aufn holzweg?
mein Port den ich setze ist 587

vorallen wie sind da eigentlich die telnet befehle um sowas gegenzuprüfen?
ich habe das grade alles in powershell gemacht

und das war nee reine tiporgie
TT73GP7
 
Beiträge: 226
Registriert: 29. Mär 2016, 19:45

Beitragvon theo » 19. Dez 2016, 19:35 Re: Textmail mit Anhang versenden?

Für SSL musst du z.B. ssl_openssl in die Uses aufnehmen.
Die Lib/DLL muss natürlich da sein.

http://synapse.ararat.cz/doku.php/publi ... :sslplugin
theo
 
Beiträge: 8053
Registriert: 11. Sep 2006, 18:01

Beitragvon TT73GP7 » 19. Dez 2016, 19:44 Re: Textmail mit Anhang versenden?

hey Theo,

ssl_openssl ist drin und ist auch da

aber das würde er ja auch anmeckern wenn sie nicht da wäre
ich rufe es ja auf

die meldung mit der sicheren verbindung kommt weil ich mich per powershell eingeloggt habe
lazarus gibt mir leider nix zurück :(
TT73GP7
 
Beiträge: 226
Registriert: 29. Mär 2016, 19:45

Beitragvon TT73GP7 » 19. Dez 2016, 20:19 Re: Textmail mit Anhang versenden?

ok an den Parametern kann es nicht liegen :(

also per Powershell geht es mit genau den Einstellungen :(
aber in Programm selber überspringt er immer noch diese Stelle:

Code: Alles auswählen
 
    if SMTP.Login then
    begin
      result := SMTP.MailFrom(MailFrom, Length(MailData)) and
                SMTP.MailTo(MailTo) and
                SMTP.MailData(sl);
      SMTP.Logout;
    end;   
 


Die werte stehen auch alle richtig in den Variablen drin
Code: Alles auswählen
 
uses
  Classes,
  smtpsend,
  ssl_openssl,
  SQLData,
  SysUtils,
  FileUtil,
  Forms,
  Controls,
  Graphics,
  Dialogs,
  StdCtrls;
 


Code: Alles auswählen
 
function SendMail(MailTo, MailData: string): Boolean;
var
  SMTP          : TSMTPSend;
  sl            : TStringList;
  User          : String;
  Password      : String;
  MailFrom      : String;
  SMTPHost      : String;
  SMTPPort      : String;
 
begin
  User          := SQLData.Data.MailUser;
  Password      := SQLData.Data.MailPassword;
  MailFrom      := SQLData.Data.MailFrom;
  SMTPHost      := SQLData.Data.SMTPHost;
  SMTPPort      := SQLData.Data.SMTPPort;
 
 
  Result := False;
  SMTP   := TSMTPSend.Create;
  sl     := TStringList.Create;
  try
    sl.text        := Maildata;
    SMTP.UserName  := User;
    SMTP.Password  := Password;
    SMTP.TargetHost:= SMTPHost;
    SMTP.TargetPort:= SMTPPort;
    SMTP.AutoTLS   := True;
    if Trim(SMTPPort)<>'25' then
      SMTP.FullSSL:=true; // if sending to port 25, don't use encryption
    if SMTP.Login then
    begin
      result := SMTP.MailFrom(MailFrom, Length(MailData)) and
                SMTP.MailTo(MailTo) and
                SMTP.MailData(sl);
      SMTP.Logout;
    end;
  finally
    SMTP.Free;
    sl.Free;
  end;
end;
 


und weils so schön ist das Powershell script

Code: Alles auswählen
 
PS C:\Users\admin> $EmailFrom = "test@test.de"
PS C:\Users\admin> $EmailTo = "ziel@schlumpfhausn.de"
PS C:\Users\admin> $Subject = "Testmail"
PS C:\Users\admin> $Body = "bla bla"
PS C:\Users\admin> $SMTPServer = "smtp.1und1.de"
PS C:\Users\admin> $SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
PS C:\Users\admin> $SMTPClient.EnableSsl = $true
PS C:\Users\admin> $SMTPClient.Credentials = New-Object System.Net.NetworkCredential("test@test.de","passwort");
PS C:\Users\admin> $SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)
 


ich bin grade echt ratlos
was könnte ich denn noch probieren?
was habe ich übersehen?
TT73GP7
 
Beiträge: 226
Registriert: 29. Mär 2016, 19:45

Beitragvon theo » 20. Dez 2016, 16:06 Re: Textmail mit Anhang versenden?

TT73GP7 hat geschrieben:
aber das würde er ja auch anmeckern wenn sie nicht da wäre
ich rufe es ja auf


Nicht unbedingt. Bist du auf Windows? Hast du die passende DLL?
http://synapse.ararat.cz/files/crypt/
theo
 
Beiträge: 8053
Registriert: 11. Sep 2006, 18:01

Beitragvon TT73GP7 » 20. Dez 2016, 19:31 Re: Textmail mit Anhang versenden?

ja bin grade mit windows unterwegs

mal nee dumme frage?
wo müssen denn die DLL liegen?

weil die liegen nicht in entwicklungsvereichniss sondern in den Komponenten ordner?
ich habe den Pfad bei dem entwicklungspfaden hinzugefügt :(
TT73GP7
 
Beiträge: 226
Registriert: 29. Mär 2016, 19:45

» Weitere Beiträge siehe nächste Seite »
Nächste

Zurück zu Netzwerk



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste

porpoises-institution
accuracy-worried