Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Fehler beim abholen von eMails mit IdPOP3 (https://www.delphipraxis.net/114247-fehler-beim-abholen-von-emails-mit-idpop3.html)

Mackhack 22. Mai 2008 05:23


Fehler beim abholen von eMails mit IdPOP3
 
Hi DPler,

weis jemand warum ich immer diese Error Message bekomme?

Zitat:

---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EIdReplyPOP3Error with message 'Syntax error
'.
---------------------------
Break Continue Help
---------------------------
Delphi-Quellcode:
  LvweMails.Items.Clear;
  for inIndex := 0 to MsgCount - 1 do
  begin
    StatusBar1.Panels[0].Text := Format('Downloading Messages... %d of %d', [inIndex, MsgCount]);
    Application.ProcessMessages;
    Mess.Clear;
    POP.RetrieveHeader(inIndex, Mess);
    ListItem := LvweMails.Items.Add; <====== Hier!!!
    ListItem.Caption := Mess.From.Text;
    ListItem.SubItems.Add(Mess.Subject);
    ListItem.SubItems.Add(FormatDateTime('dd/mm/yyyy hh:mm:ss', Mess.Date));
    ListItem.SubItems.Add(IntToStr(POP.RetrieveMsgSize(inIndex) div 1024) + 'kb');
    StatusBar1.Panels[0].Text := 'Total Messages: ' + IntToStr(MsgCount);
  end;
end;

rollstuhlfahrer 22. Mai 2008 13:05

Re: Fehler beim abholen von eMails mit IdPOP3
 
HI,

was sind ListItem und LvweMails( dies kann mangels Parameter im Code kein ListView sein)?

rollstuhlfahrer

Andreas L. 22. Mai 2008 14:20

Re: Fehler beim abholen von eMails mit IdPOP3
 
Der index von IdPop3 geht von 1 bis Count, nicht von 0 bis Count -1. Da liegt wahrscheinlich dein Fehler.

rotfc 22. Mai 2008 14:39

Re: Fehler beim abholen von eMails mit IdPOP3
 
Nicht
Delphi-Quellcode:
ListItem.SubItems.Add(FormatDateTime('dd/mm/yyyy hh:mm:ss', Mess.Date));
sondern
Delphi-Quellcode:
ListItem.SubItems.Add(FormatDateTime('dd/mm/yyyy hh:nn:ss', Mess.Date));
mm sind die Monate, nn die Minuten, falls ich mich recht erinnere ;-)

Mackhack 22. Mai 2008 15:35

Re: Fehler beim abholen von eMails mit IdPOP3
 
Es kracht doch aber nicht in der Datumszeile sondern schon viel weiter oben.

Und ja es ist ein LvweMails ist ein ListView!

Auch wenn ich von 1 bis Count schreibe gehts nicht. Das war naemlich mein erster Versucht schon mit der MsgCount Variablen.

marabu 22. Mai 2008 16:35

Re: Fehler beim abholen von eMails mit IdPOP3
 
Hallo Tobias,

der Hinweis von Andreas ist ernst zu nehmen.

Der von dir beobachtete Fehler ist zu erwarten und tritt bei RetrieveHeader() auf, wenn der Server das optionale Command TOP nicht versteht. Deine Markierung im Quelltext ist irreführend, der Fehler tritt in der Zeile darüber auf.

Freundliche Grüße

Mackhack 22. Mai 2008 16:41

Re: Fehler beim abholen von eMails mit IdPOP3
 
Marabu,

was sollte ich dann deiner Meinung nach tun? Ich bin grad etwas auf dem Schlauch! Was ist denn am Code falsch?

Habs jetzt wieder so die Zeile:

Delphi-Quellcode:
for inIndex := 1 to MsgCount do

marabu 22. Mai 2008 17:18

Re: Fehler beim abholen von eMails mit IdPOP3
 
Den Wertebereich des Index hast du ja korrekt angepasst.

Falsch ist da eigentlich nichts. Der Fehler rührt von deiner Annahme, dass jeder Mail-Server alle möglichen Kommandos versteht.

Nimm statt RetrieveHeader() einfach Retrieve() oder füge eine Fallunterscheidung ein.
Die vom Server verstandenen Commands kannst du ja vorher abfragen, wenn du den Aufwand treiben willst.

Mackhack 22. Mai 2008 17:33

Re: Fehler beim abholen von eMails mit IdPOP3
 
Und es funktioniert 1A!

Aber woher wissen wenn nicht stehlen oder so aehnlich :roll:

Mackhack 22. Mai 2008 17:42

Re: Fehler beim abholen von eMails mit IdPOP3
 
Noch kurz eine Frage:

Wie muesste man denn diese Fallunterscheidung angehen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:54 Uhr.
Seite 1 von 2  1 2      

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 by Thomas Breitkreuz