Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Was bedeutet dieser Fehler (https://www.delphipraxis.net/20923-bedeutet-dieser-fehler.html)

S2B 25. Apr 2004 12:50


Was bedeutet dieser Fehler
 
Hi @all!
Was bedeutet dieser Fehler:
Code:
Im Projekt Projekt.exe ist eine Exception der Klasse EConvertError aufgetreten. Meldung: '''ist kein gültiger Integerwert'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortfahren.
Es muss ja irgendetwas mit dem Konvertieren von Werten zu tun haben. Im Projekt wird aber nur 2 Mal etwas konvertiert:
Delphi-Quellcode:
//Form10.Bilder.Caption enthält Zahlen von 1 bis 4:
StrToInt(Form10.Bilder.Caption);
//das gleiche:
StrToInt(Form10.Start.Caption);
Warum kommt dann trotzdem der Fehler?

alcaeus 25. Apr 2004 12:51

Re: Was bedeutet dieser Fehler
 
Das heißt, entweder Form10.Bilder.Caption oder Form10.Start.Caption ist ein leerer String, pack das ganze mal in einen try-except-Block und fang das ganze ab...

Die Muhkuh 25. Apr 2004 12:55

Re: Was bedeutet dieser Fehler
 
So wie ich das sehe ist in Form10.Bilder.Caption oder in dem anderen ein ' enthalten. Und das ist kein Intergerwert.

alcaeus 25. Apr 2004 12:57

Re: Was bedeutet dieser Fehler
 
Hoppla, ein ' übersehen....naja, kann passieren, aber der Lösungsansatz stimmt immer noch :mrgreen:

Die Muhkuh 25. Apr 2004 12:58

Re: Was bedeutet dieser Fehler
 
Oder einfach nur zahlen zulassen.

S2B 25. Apr 2004 13:00

Re: Was bedeutet dieser Fehler
 
@alcaeus: Versuch ich mal!

@Spider: Das stimmt nicht ganz:
Im Projekt Projekt.exe ist eine Exception der Klasse EConvertError aufgetreten. Meldung: '''ist kein gültiger Integerwert'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortfahren.

Jetzt dürfte alles klar sein!

Edit: [Mega-OT] Kann mir jemand sagen, wie ich in einem Code etwas Fett schreiben kann? [/Mega-OT]

Die Muhkuh 25. Apr 2004 13:11

Re: Was bedeutet dieser Fehler
 
@S2B

das sind aber keine Gänsefüsschen " sond zwei '!

Zum Edit:

Nimm die Delphi-CodeTags ( [ delphi] [ /delphi] ) nur ohne die leerzeichen

S2B 25. Apr 2004 13:30

Re: Was bedeutet dieser Fehler
 
Noch zum OT: So war das aber nicht gemeint! Ich will es so haben:
Code:
 Test [b]Test[/b]
Zum Rest :mrgreen:: Das weiß ich! Sonst hätte ich sie ja auch nicht so geschrieben!

Edit: :wiejetzt: Hat es jetzt eigentlich etwas mit dem Konvertieren von Variablen zu Integers (z.B. StrToInt) zu tun oder nicht?

Die Muhkuh 25. Apr 2004 13:36

Re: Was bedeutet dieser Fehler
 
@S2B er zeigt aber definitiv 3 ' an! Sonst würde dastehen '32f4s' ist kein gültiger Intergerwert.

alcaeus 25. Apr 2004 13:40

Re: Was bedeutet dieser Fehler
 
So, damit wir dem jetzt endlich ein Ende machen:
Zitat:

Zitat von Delphi
'''ist kein gültiger Integerwert'

Das erste ' ist für den Start der zurückgegebenen Fehlermeldung, das zweite zeigt den Beginn des Texts an, der umgewandelt werden soll, das dritte bedeutet das Ende desselben, und das letzte signalisiert das Ende der Meldung. Somit ist der String schlicht und einfach leer

S2B 25. Apr 2004 13:42

Re: Was bedeutet dieser Fehler
 
Also ist beim Ausführen eines StrToInt das "Feld" leer!?

alcaeus 25. Apr 2004 13:46

Re: Was bedeutet dieser Fehler
 
Genau, 100 Punkte!
ich würds so machen:
Delphi-Quellcode:
bOk := True;
try
  StrToInt(Form10.Bilder.Caption);
  StrToInt(Form10.Start.Caption);
except
  bOk := False;
end;
if bOk then
begin
//Code der ausgeführt werden soll
end
else
  ShowMessage('Ungültiger Wert!');
Somit wird eine Fehlermeldung ausgegeben, wenn ein Fehler kommt. In den Debuggeroptionen von Delphi musst du dann noch abschalten, dass Delphi bei Debugger-Exceptions stoppt, und du bekommst nur mehr deine Fehlermeldung, wenn du die exe startest dann sowieso nur die...

S2B 25. Apr 2004 13:50

Re: Was bedeutet dieser Fehler
 
Das Problem ist nur: Ich hab die beiden Labels durch Variablen vom Typ Integer ersetzt! Die Fehlermeldung wird aber weiterhin angezeigt! :wall:

alcaeus 25. Apr 2004 13:55

Re: Was bedeutet dieser Fehler
 
:wiejetzt:
ähm, der Fehler muss dann woanders auftreten...
Probier mal das hier einzusetzen:
Delphi-Quellcode:
StrToInt('10');
anstatt den Zeilen die du im ersten Beitrag gepostet hast. Tritt der Fehler noch auf, so hast du irgendwo eine andere Umwandlung

S2B 25. Apr 2004 14:01

Re: Was bedeutet dieser Fehler
 
Zitat:

Zitat von S2B
Ich hab die beiden Labels durch Variablen vom Typ Integer ersetzt!

Sprich: Den Code aus dem ersten Beitrag gibt es nicht mehr. :-D

Ich hab jetzt meine ganzen Units nach StrToInt durchsucht! Es ist keins mehr drinne (bzw. ich hab sie in { } gesetzt :mrgreen: ). Ich schau jetzt mal nach anderen Umwandlungen!

S2B 25. Apr 2004 14:12

Re: Was bedeutet dieser Fehler
 
Also, hab meine ganzen Units nach
Code:
StrToInt, IntToStr, ToInt, ColorToString und StringToColor
durchsucht. Bin auf folgendes gestoßen:
Code:
StringToColor, ColorToString, IntToString und StringToInt
Die hab ich dann eingeklammert ( { und } ) und es nochmal ausgeführt! Es ging immer noch nicht! :wall:


Edit: Ich glaub ich werd zum :freak:! Es ging ganz plötzlich! Hab einfach ein paar Sachen willkürlich (fast :) ) eingeklammert und irgendwann gings! :mrgreen: Schon komisch...

alcaeus 25. Apr 2004 14:16

Re: Was bedeutet dieser Fehler
 
Hmm, sehr merkwürdig, jetzt weiß ich auch nicht mehr weiter...in welcher Zeile bleibt der Debugger stehen, wenn die Fehlermeldung kommt?

S2B 25. Apr 2004 14:19

Re: Was bedeutet dieser Fehler
 
Bitte das Edit lesen! Übrigens lag das ganze an StringToColor und der Debugger blieb im Projekt hängen!

alcaeus 25. Apr 2004 14:26

Re: Was bedeutet dieser Fehler
 
Achso, na dann, Bravo


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:59 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