TNMPOP3 Fehler 'Socket readln aborted'



  • Hallo Alle zusammen,
    heut muss ich euch mal belästigen ;-).

    Ich besuche bei der ILS ein Seminar für C++ Programmierung.
    Jetzt stehe ich aber vor einem Rätsel.

    Ich arbeite an einen ganz einfachen kleinen E-Mail Programm mit TNMPOP3 ( ich muss diese Komponente benutzen , da sonst mein Programm nicht mit den Studienheft übereinstimmt ).

    Wenn ich nun Mails hole - funktioniert der Connect und die Auth zum Server problemlos. Auch die Anzahl der Mails auf dem Server holt er und zeigt Sie an.

    Sobald ich jedoch NMPOP31->GetMailMessage(x); ausführe kommt folgende Debuginfo :

    Benachrichtigung über Debugger-Exception
    Im Projekt email.exe ist eine Exception der Klasse EAbortError
    aufgetreten. Meldung: 'Socket readln aborted'. Prozeß wurde angehalten
    

    So nun habe ich natürlich rumprobiert und gesucht ohne Ende - aber für so nen NOOP wie mich ist es aussichtslos den Fehler zu finden. Habe extra dafür ein Programm geschrieben was nur 3 Komponenten hat , nen Button, die NMPOP3 Komponente und ein Label in dem Status bzw. Anzahl der Mails anzeigen lasse. hier alles was ich schon probiert oder festgestellt habe.

    - Ich habe es auf 2 Rechnern kompiliert und probiert - Fehler
    - Ich habe 3 Mailserver probiert ( 1x lokaler Postix Server, 1x Internet Postfix Server 1x GMX ) - Fehler

    Der connect zum Server klappt
    Die Authorisation klappt
    Das Zählen der Mails auf dem Server klappt

    aber sobald NMPOP31->GetMailMessage(1); aufgerufen wird ist Ende. Das Ereignis OnRetriveStart wird noch ausgeführt dann kommt der Fehler.

    Im Moment Sieht mein Test , der beim klick auf den Button ausgeführt wird, so aus :

    if (!NMPOP31->Connected){
            NMPOP31->Connect();
            Label1->Caption=NMPOP31->MailCount;
            NMPOP31->GetMailMessage(1);
            }
    

    Der Messageindex ist der einfachkeit halber statisch festgegeben

    Desweiteren habe ich einen Timeout von 2000 ms eingestellt ( passiert aber auch mit 20000 ) dier Fehlermeldung kommt nach ablauf des Timeouts.

    Desweiteren habe ich mir noch den Status der Komponente NMPOP3
    ausgeben lassen. das sieht dann so aus :

    Status : Connecting
    Status : Resolve Host
    Status : Timer On
    Status : Timer Off
    Status : Timer On
    Status : Timer Off
    Status : ReadLn
    Status : Timer On
    Status : Timer Off
    Status : Transaction
    Status : Writeln
    Status : Write
    Status : Sending Buffer
    Status : Timer On
    Status : Timer Off
    Status : ReadLn
    Status : Timer On
    Status : Timer Off
    Status : +OK May I have your password, please?
    Status : Transaction
    Status : Writeln
    Status : Write
    Status : Sending Buffer
    Status : Timer On
    Status : Timer Off
    Status : ReadLn
    Status : Timer On
    Status : Timer Off
    Status : +OK mailbox has 1 messages (953533 octets)
    Status : Transaction
    Status : Writeln
    Status : Write
    Status : Sending Buffer
    Status : Timer On
    Status : Timer Off
    Status : ReadLn
    Status : Timer On
    Status : Timer Off
    Status : +OK 1 953533
    Mails auf dem Server : 1
    Status : Checking Connection
    Status : Transaction
    Status : Writeln
    Status : Write
    Status : Sending Buffer
    Status : Timer On
    Status : Timer Off
    Status : ReadLn
    Status : Timer On
    Status : Timer Off
    Status : +OK message follows
    Status : ReadLn
    Status : Timer On
    Status : Timer Off
    Status : ReadLn
    Status : Timer On
    Status : Timer Off
    Status : ReadLn
    Status : Timer On
    Status : Timer Off
    Status : ReadLn
    Status : Timer On
    Status : Timer Triggered
    Status : Timer Off
    Status : Canceling
    Status : Disconnecting
    Status : Request Close Socket
    Status : Clearing Input
    Status : Timer Off
    

    Vielen Dank für eure Hilfe
    T



  • Fehler selber gefunden 🙂 Der Virenscanner war es.

    CU
    T


Anmelden zum Antworten