EListError



  • Hallo Zusammen,
    ich habe eine TCP-Server Application geschrieben, bei der die empfangenen Daten in einem Memo-Feld ausgegeben werden.

    Zwischen duch bekomme ich die Fehlermeldung "Exeption der Klasse EListError. Meldung: Der Index der Liste überschreitet das Maximum(0)"

    Die Ausgabe in dem Memofeld habe ich daraufhin in try catch eingebunden

    try
    	{
    		Memo1->Lines->Add(astr);
    	}
    	catch(...)
    	{
    		Application->MessageBoxA("Fehler in Memo1", NULL, MB_OKCANCEL);
    	}
    

    Der obige Fehler ist damit nicht gezielt anzuzeigen. Hat jemand eine Idee wo ich suchen muß um den Fehler zu finden? 🙄

    Danke Evi48



  • Hast du schon das Programm im Debugger-Modus gestartet?

    MfG
    xy



  • Ja das läuft im Debugger Modus

    Evi48



  • Na dann siehst du doch, in welcher Zeile der Fehler ausgelöst wird, beim Add() mit Sicherheit nicht.
    Es sei denn benutzt ein 9x-System und stösst evtl. an die 64k-Grösse des Memos.



  • Wenn ich die Zeile ausfindig machen könnte das wäre schön doch das Programm stoppt in dem File Classes ich nehme an von Borland und nicht in meinem Code.

    Evi48



  • evi48 schrieb:

    doch das Programm stoppt in dem File Classes [...]

    Und weiter? Was passiert dann, wenn du weiter debuggst?

    MfG
    xy



  • Das Programm läuft dann weiter bis der Fehler wieder auftritt.
    Evi48



  • evi48 schrieb:

    Das Programm läuft dann weiter bis der Fehler wieder auftritt.
    Evi48

    Ich vermute mal, du debuggst weiter mit F8, stimmt's?
    Wenn du mit F7 weiter debuggst, dann landest Du irgendwann wieder in deinem Code (kann einbißchen dauern), und dort machst du weiter mit F7 bis du die Zeile erwischst, die den Fehler verursacht.

    MfG
    xy



  • Jaein. Es ist schlimmer mit F9. Das werde ich versuchen. Ich habe bisher die Geduld verloren melde wenn ich was neues weiss

    Evi48



  • Das funktioniert leider auch nicht. Dabei war das so vielversprechend.

    Evi48



  • evi48 schrieb:

    Das funktioniert leider auch nicht. Dabei war das so vielversprechend.

    Evi48

    Verstehe ich nicht.
    Hast du den Fehler nicht lokalisieren können?
    Debuggst du dein Code auch zu Ende?

    MfG
    xy



  • So ich hab ihn.

    Es liegt an der Verbindung mit TServerSocket. Dort gibt es die Eigenschaft Connections[n]. Das heisst ein Socket kann mehrere Connenctions zu anderen Clients verwalten. Ist jetzt der Socket auf listen ist die Eigenschaft Activ = true aber es besteht keine Verbindung und es kommt zu der Fehlermeldung.

    Das ich nicht mit F7 nicht zurück kommen konnte liegt glaube ich daran, dass die XDR-Schicht (Rechner unabhängiges Protokoll) das blockiert.

    Vielen Dank für die Hilfe es tut gut wenn man weiss dass man Mitstreiter hat
    Evi48
    🙂


Anmelden zum Antworten