![]() |
String in Listbox eintragen: Problem mit der Liste
Hallo!
Ich bins mal wieder mit einem Problem.... Ich habe eine listbox namens lb_liste und eine function getlist:string Doch bei jeder Abfrage erhalte ich eine AV... Hier der Betreffende Code:
Delphi-Quellcode:
Und die getlist:
lb_liste.Items.Add(pop3.getList);
Delphi-Quellcode:
bra ist der empfangene Text vom server, beispielsweise so:
function tpop.getList():String;
begin //showmessage(IntToStr(status)); if status > 0 then begin client.Socket.SendText('LIST ' + chr(10)); delay(1000); result := bra; end else result := 'nein' end; Zitat:
Eine showmessage gibt die liste hne probleme aus... Hier die Fehlermeldung: Zitat:
MfG |
Re: String in Listbox eintragen: Problem mit der Liste
Hallo,
von welchem Type ist denn bra? Für mich schaut das aus wie eine StringList, wenn dem so sein sollte, müsstest Du dem result bra.text übergeben. Grüße Klaus |
Re: String in Listbox eintragen: Problem mit der Liste
Ne. :zwinker: Die soll er mal schön mit create erzeugen.
|
Re: String in Listbox eintragen: Problem mit der Liste
Was soll er erzeugen?
|
Re: String in Listbox eintragen: Problem mit der Liste
Hallo!
bra ist ein einfacher string... Ich hab jetzt schon die CRLF entfernt, mit gleichem ergebnis.... mfg |
Re: String in Listbox eintragen: Problem mit der Liste
Wann tritt der Fehler denn auf? Stepp doch mal durch.
|
Re: String in Listbox eintragen: Problem mit der Liste
@DeddyH: Schon erledigt...
Genau in der Zeile
Delphi-Quellcode:
kommt die Exception.
lb_liste.Items.add(pop3.getList);
Wenn ich die zeile durch
Delphi-Quellcode:
ersetze bekomm ich den String angezeigt...
showmessage(pop3.getlist);
Ok, mit
Delphi-Quellcode:
Gibts den gleiche fehler...
s:=pop3.getList;
lb_liste.Items.add(s); Liegt es vielleicht an der Länge des Strings? |
Re: String in Listbox eintragen: Problem mit der Liste
Ich glaube nicht, dass es an der Stringlänge liegt. Allerdings muss ich leider zugeben, dass mir im Moment die Ideen ausgegangen sind :(
|
Re: String in Listbox eintragen: Problem mit der Liste
Hallo langer Hans,
die von dir gezeigten Code-Zeilen mögen syntaktisch korrekt sein, vom Ablauf her wohl eher nicht. Vertraust du wirklich darauf, dass durch Rückgabe deiner Zeitscheibe an das Betriebssystem der Empfang zuverlässig gelaufen ist? GetList() ist eine Funktion, aber in erster Linie eine Methode und vieles andere mehr bleibt bei deiner Fehlerbeschreibung im Dunkeln. Eine Lösung deines Problems verlangt hellseherische Fähigkeiten. Meine Vermutung: Es liegt ein Timing-Problem vor, verursacht durch ein fehlerhaftes Gesamtkonzept. Freundliche Grüße |
Re: String in Listbox eintragen: Problem mit der Liste
puuh, ok...
Ich weiss, dass das Konzept nicht das beste ist. Ich muss es nur irgendwie zum laufen bekommen... Das etwas zurückkommt weiss ich, weil ja das event OnClientRead ausgelöst wird und darin die Daten gecheckt werden... Also, ich habe neue erkenntnisse: Ich habe die betreffende Zeile mal durch
Delphi-Quellcode:
ausgetauscht und das ergebnis war der selbe fehler....
lb_liste.Items.Add('Test')
Mit einem neuen button klappt das einfügen in die listbox... |
Re: String in Listbox eintragen: Problem mit der Liste
Dann ist ja alles klar: Der alte Button war wohl etwas abgenutzt.
|
Re: String in Listbox eintragen: Problem mit der Liste
Zitat:
Zitat:
|
Re: String in Listbox eintragen: Problem mit der Liste
Ich versteh Dich immer noch nicht, wo soll denn Deiner Meinung nach das [Watweißich].Create hin?
|
Re: String in Listbox eintragen: Problem mit der Liste
Zitat:
|
Re: String in Listbox eintragen: Problem mit der Liste
Wenn auf ein nicht instantiierte Instanz zugegriffen worden wäre,
hätte dann nicht die Meldung lauten sollen > Lesen von Adresse 00000000. und nicht > Lesen von Adresse 00000320. Grüße Klaus |
Re: String in Listbox eintragen: Problem mit der Liste
Aber bra scheint ja nur eine einfache Stringvariable zu sein, die mit ShowMessage ja wohl auch ausgegeben wird, von daher bleibt mir verschlossen, wie Du auf diese Vermutung kommst.
|
Re: String in Listbox eintragen: Problem mit der Liste
Zitat:
Also: deine Aussage ist so nur auf die Instanzenvariable an sich anwendbar, nicht aber, wenn man direkt einen Aufruf oder Zugriff auf eine Methode oder Property der nicht instanziierten Objektvariable tätigt. Dann wird der jeweilige Offset dazu addiert um das entsprechende Element zu addressieren. |
Re: String in Listbox eintragen: Problem mit der Liste
also, die listbox ist nicht dynamisch erzeugt...
Der Zugriff klappt ja auch nur über diesen einen button nicht. der gleiche fehler tritt bei einer weiteren function der klasse tpop genauso auf. Auch diese gibt einen string zurück, allerdings für ein memo... MfG |
Re: String in Listbox eintragen: Problem mit der Liste
Möglicherweise das vergessen?:
Delphi-Quellcode:
pop3 := TPop.Create(Self);
|
Re: String in Listbox eintragen: Problem mit der Liste
Und wieso gibt ShowMessage dann das gewünschte Ergebnis aus?
|
Re: String in Listbox eintragen: Problem mit der Liste
@Robby: Nee, das ist drin, der connect klappt ja...
Wenns hilft werde ich morgen mal das ganze Projekt online stellen. Dann aber nicht über die unordnung wundern, das sind 3 teile von verschiedenen Leuten... MfG |
Re: String in Listbox eintragen: Problem mit der Liste
Hallo!
Das Problem ist gelöst, Ursache mehr oder weniger unbekannt... :? Es gab ja einmal die receiveemails function in der GUI, aus der wurde die pop3.getlist aufgerufen. Die receiveemails wurde von einem Button aus einer ToolBar aufgerufen. Mit dem code der receiveemails direkt in der receiveCLICK gehts... Ein weiterer Grund Delphi nicht zu mögen... :duck: :mrgreen: MfG |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:16 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