AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

IdSMTP und bcc Fehler

Ein Thema von josefkoller · begonnen am 23. Feb 2013 · letzter Beitrag vom 24. Feb 2013
Antwort Antwort
Seite 1 von 2  1 2      
josefkoller

Registriert seit: 22. Okt 2012
49 Beiträge
 
#1

IdSMTP und bcc Fehler

  Alt 23. Feb 2013, 14:52
Hallo,

ich versende einen News Letter mit Indy (IdMessage und IdSMTP) mittels bcc.

Das Ganze funktionierte auch mit ein paar Test-Mailadressen.

Wenn ich nun die Procedure mit allen Adressen, an die die Mail verschickt werden soll starte, kommt es zu folgender Fehlermeldung:

Delphi-Quellcode:
Im Projekt .... ist eine Exception der Klasse EIdProtocolReplyError aufgetreten.
Meldung: '5.52 <keine>: Recipient adress rejected: need fully-qualified adress'. Prozess wurde angehalten ...
In bcc werden an die 100 Mailadressen eingefügt. Irgendeine löst die genannte Fehlermeldung aus.

Gibt es eine Möglichkeit, zu prüfen, bei welcher Adresse es zu der Fehlermeldung kommt oder gibt es eine Möglichkeit, daß die "falsche" eMailadresse in der bcc-Liste einfach übersprungen wird?

Vielen Dank.

Josef
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: IdSMTP und bcc Fehler

  Alt 23. Feb 2013, 20:39
Guten Abend,

Du könntest vor dem Einfügen überprüfen ob die Adresse in Ordnung ist.
z.B. mit einem regulärem Ausdruck.

Wenn die Adressen in Ordnung sind - aber die Domain eventuell nicht
existiert und deshalb vom Mailserver nicht behandelt wird, dann wird es schwieriger.

Auf den Mailserver hast Du keinen Zugriff?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
josefkoller

Registriert seit: 22. Okt 2012
49 Beiträge
 
#3

AW: IdSMTP und bcc Fehler

  Alt 23. Feb 2013, 22:17
Hallo,

vielen Dank für die Antwort.

Zugriff auf den Mailserver??? Was meinst du damit?

Ich benutze den Mailserver meines Hosters. Da was zu manipulieren wird nicht gehen.

Und ich hab den ganzen Nachmittag mit Googlen verbracht.

So wie es ausschaut, funktioniert das mit meiner INDY Version nicht (INDY 9).

In INDY 10 gibt es ein entsprechendes Event beim Versand. In diesem Event kann man den "Fehler" dann abfangen und reagieren, also abbrechen oder weitermachen, usw.

Ich häng immer noch an meinen Delphi Versionen 6 und 7. Ich hab zwar mal versucht Indy 10 zu intallieren, aber es hagelte nichts als Fehlermeldungen. Ich bleib deswegen bei INDY 9.


Mein Problem hab ich jetzt dadurch gelöst, daß ich keine bcc Liste fülle, sondern an alle Empfänger in meiner Liste mittels einer Schleife eine normale EMails schicke.

Die Exception ist in der while Schleife und bei Fehlern wird die Liste weiter abgearbeitet. Evtl. Fehler sehe ich dann in meinem EMailpostfach oder in einem Memofeld und kann die Adressen korrigieren oder aus der Liste streichen.

Ist zwar etwas umständlich aber was soll's.

Hier noch meine Prozedur:

Delphi-Quellcode:
      fDMIMKER.ZQAdressenmailbcc.First;
      while not fDMIMKER.ZQAdressenmailbcc.Eof do
      begin
        try
          IdMessage1.ContentType := 'text/html';
          IdSMTP1.AuthenticationType := atlogin;
          IdMessage1.Body := sdbMemo1.Lines;
          IdMessage1.From.Text :=
            fDMIMKER.ZQMailverbindungMAILMAILADRESSE.AsString;
          IdMessage1.From.Address :=
            fdmimker.ZQMailverbindungMAILMAILADRESSE.AsString;
          IdMessage1.subject := sdbedit1.text;
          IdMessage1.Recipients.EMailAddresses :=
            fDMIMKER.ZQAdressenmailbccADRMAILBCCEMPFAENGER.AsString;
          IdMessage1.Priority := mpNormal;
          Application.ProcessMessages;
          IdSMTP1.Username :=
            fDMIMKER.ZQMailverbindungMAILMAILADRESSE.AsString;
          IdSMTP1.Password := fdmimker.ZQMailverbindungMAILPASSWORT.AsString;
          IdSMTP1.Host :=
            fdmimker.ZQMailverbindungMAILAUSGANGSSERVER.AsString;

          IdSMTP1.Connect;
          Application.ProcessMessages;
          IdSMTP1.Send(IdMessage1);
          Application.ProcessMessages;
        except
          on E: Exception do
          begin
           sMemo1.Text:= sMemo1.Text + 'Fehler bei EMailadresse:
'+fdmimker.ZQAdressenmailbccADRMAILBCCEMPFAENGER.AsString+#10#13+e.Message+#10#13;
          end;
        end;
        fDMIMKER.ZQAdressenmailbcc.Next;
        IdSMTP1.Disconnect;
      end;
Ciao

Josef
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: IdSMTP und bcc Fehler

  Alt 23. Feb 2013, 22:44
Nun dann hast du doch auch die fehlerhaften mail-Adressen.

Aber was hindert dich, die mail-Adressen vorher zu prüfen und die schlechten zu filtern?
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
josefkoller

Registriert seit: 22. Okt 2012
49 Beiträge
 
#5

AW: IdSMTP und bcc Fehler

  Alt 24. Feb 2013, 00:35
Hallo,

diese Mailliste ist ja nicht statisch, sondern sie verändert sich laufend. Soll heißen neue Adressen kommen hinzu, alte, die funktionierten können aufgegeben werden oder was auch immer.

Ich muß also immer erst Mal "normal", also jede EMailadresse einzeln, abschicken, um Bescheid zu wissen.

Und wenn die Mail dann schon abgeschickt ist, brauch ich anschließend nicht nochmal mit bcc zu verschicken.

Ciao

Josef
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: IdSMTP und bcc Fehler

  Alt 24. Feb 2013, 02:26
Also wenn der Fehler "need fully qualified address" ist, dann entsprechen die mail-Adressen nicht dem Standard und können auch vorher rausgefiltert werden.

Hast du mal eine solche mail-Adresse als Beispiel da?
Alle Buchstaben kannst du ja mit x ersetzen und alle Ziffern mit 0.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
josefkoller

Registriert seit: 22. Okt 2012
49 Beiträge
 
#7

AW: IdSMTP und bcc Fehler

  Alt 24. Feb 2013, 10:19
Hallo,

danke Dir, daß Du Dich meines Problems annimmst.

Beim Abschicken (IdSMTP1.Send(IdMessage1) einzeln mittels while schleife passiert folgendes:

"Falsche" Emailaddressen werden auch abgeschickt. In diesem Fall kommt eine Returnmessage vom Server in mein EMailpostfach.

Diese "falschen" EMailadressen lösen keine Exception aus. Ich kann sie aber eben mit dieser Returnmessage korrigieren oder streichen.

Aber eine Adresse löst eine Exception aus. Die entsprechende Fehlermeldung siehe ganz oben im Eingangspost wird in mein Memofeld eingetragen.

Bei der Exceptionbehandlung hab ich auch noch stehen, daß der Datensatz mit in das Memofeld geschrieben wird.

Das passiert aber nicht. Ich weiß also immer noch nicht, wer diesen Fehler auslöst.

Du schreibst:
Zitat:
Also wenn der Fehler "need fully qualified address" ist, dann entsprechen die mail-Adressen nicht dem Standard und können auch vorher rausgefiltert werden.
Wie geht denn das? Der Fehler wird bei IdSMTP1.Send ausgelöst. Wie komm ich denn vor dem Send an die falsche Adresse?

Danke.

Josef
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: IdSMTP und bcc Fehler

  Alt 24. Feb 2013, 12:16
Ok, da du uns die verfremdeten Adressen nicht geben möchtest ...

versuche doch mal die Adressen nicht komplett, sondern in Blöcken zu versenden (z.B. max 10 Stück)
Da wo der Fehler auftaucht ist dann die fehlerhafte Adresse.

Es kann natürlich auch sein, dass die BCC Liste zu lang wird ... alles ist möglich ... und dann wirst du die auf jeden Fall eben kürzen müssen.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (24. Feb 2013 um 12:39 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#9

AW: IdSMTP und bcc Fehler

  Alt 24. Feb 2013, 12:24
Hallo,
ich versende einen News Letter mit Indy (IdMessage und IdSMTP) mittels bcc.
Und wieso schreibst Du dann die EMail-Adressen in Recipients und nicht in BccList?

IdMessage1.Recipients.EMailAddresses := fDMIMKER.ZQAdressenmailbccADRMAILBCCEMPFAENGER.AsString;
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
josefkoller

Registriert seit: 22. Okt 2012
49 Beiträge
 
#10

AW: IdSMTP und bcc Fehler

  Alt 24. Feb 2013, 13:26
Hallo,

blöd....
Da kommt was durcheinander.
Die Behlszeile, die Du zitierst, stammt aus der Procedure mit der ich die Mails einzeln durch eine While schleife verschicke.

Davor wollte ich eben mit bcc verschicken und da wird der ganze Versand eben wegen dieser Exception abgebrochen.

Mit bcc sah die Procedure so aus:

Delphi-Quellcode:
//bcc Part

  fDMIMKER.ZQAdressenmailbcc.First;
  while not fDMIMKER.ZQAdressenmailbcc.Eof do
  begin
    IdMessage1.BccList.Add.Address :=
       fdmimker.ZQAdressenmailbccADRMAILBCCEMPFAENGER.AsString;
    fDMIMKER.ZQAdressenmailbcc.Next;
  end;
Emailadressenbeispiele kann ich schon geben:

Die erzeugte bcc Liste sieht so aus :

Code:
'info@josefkoller.de,bubiii@web.de, baerbelmeier@t-online.de, ....usw'.
Es sind weit über 100 momentan.

Der Vorteil mit bcc zu verschicken wäre, daß nur eine EMail versandt wird. Würde ruckzuck gehen.

Bei meiner jetzigen Methode werden über 100 Mails verschickt und das dauert.

Ich bräucht halt irgendwas, um vor dem Send schon zu prüfen, welche den die Exception auslöst.

Und wenn's an der Anzahl der Adressen liegt, müßt ich auch irgendwie wissen, wieviele ich denn reinpacken kann.

Ich kann schlecht blockweise mit den vorhandenen Wirkadressen rumhantieren. Die würden sich wundern, wenn dauernd Mails von mir bei Ihnen auftauchen oder auch nicht.

Ich könnt die bcc Liste auch 100 mal mit meiner eigenen Adresse füllen. Da käm ich dann dahinter, ob es an der Anzahl der Einträge liegt.

Aber wenn die Exception durch eine "falsche" Wirkemailadresse verursacht wird ....

Irgendwas zum Prüfen vor dem Send, daß wär's.

danke nochmal.

Josef
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:18 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