![]() |
Re: Mysteriöses Problem bei procedure
Danke für den Link. Soviele funktionen kannte ich noch nicht vom Debugger.
Also: es gibt in diesem Befehl (fürs debuggen n bissl anders Formatiert):
Delphi-Quellcode:
Bei
Listbox1.Items.Add(
AllEvents[i].Title+ deli+ DateAsString( AllEvents[i].Date,'.')+ ' '+ InXDays( AllEvents[i].Date)); deli:='';
Delphi-Quellcode:
eine Fehlermeldung die da lautet:"Project raised exeption class 'External: SIGSEGV'."
DateAsString(AllEvents[i].Date,'.')
|
DP-Maintenance
Dieses Thema wurde von "Matze" von "Programmieren allgemein" nach "Sonstige Fragen zu Delphi" verschoben.
Delphi-Frage |
Re: Mysteriöses Problem bei procedure
Wenn du tatsächlich ne externe Exception SIGSEGV bekommst, dann scheint dein Problem anderer Natur zu sein.
![]() Statt DateAsString(AllEvents[i].Date,'.') in den Parametern direkt zu verwenden, erstelle eine Hilfsvariable, der du den Wert zuweist. Setze da einen Breakpoint drauf und steppe da mit F7 bzw. F8 durch. |
Re: Mysteriöses Problem bei procedure
Wahrscheinlich wurden an anderer Stelle, durch Zugriffe auf ungültige Adressen, Daten des Speichermanagers zerschossen.
Unabhängig davon seh ich hier ein mögliches Speicherleck:
Delphi-Quellcode:
Falls diese Variable (z.B. bei einem zweiten Aufruf der Funktion) bereits auf ein Objektinstanze verweist.
Feiert:=TFeiertage.Create;
|
Re: Mysteriöses Problem bei procedure
Hi!
@Blup: Das war das erste Problem... @all: ich habe das Problem eingegrenzt. Aus welchen grund auch immer tritt diese Exeption bei "m:=imttostr(2);" auf. Ich verstehe einfach nicht warum der das nicht macht... :( Wisst ihr weiter? |
Re: Mysteriöses Problem bei procedure
Wenn du ein Formular TForm0815 hast, dann darf im gesamten Code die Klasse die (globale) Variable Form0815 nicht angesprochen werden.
Das kann man sich ruhig als goldene Regel an den Monitor kleben.
Delphi-Quellcode:
Also such mal deinen gesamten Sourcecode ab, ob du diese Regel noch an anderen Stellen verletzt hast.
procedure TForm1.UppdateEvents;
begin Form1.Cursor:=crHourGlass; // FALSCH !!! Cursor:=crHourGlass; // so wäre es richtig |
Re: Mysteriöses Problem bei procedure
sehr schön. Hab ich korrigiert. ABER: Der Debugger bleibt immernoch bei "m:=inttostr(integer(mm));" mit der Exeption stehen... :(
[edit]Ist der Titel jetzt besser? [/edit] |
Re: Exeption bei m:=inttostr(integer(mm))
Ein Problem eingrenzen heisst: Problemstelle isolieren -> Neues Projekt -> Problemstelle dort implementieren -> Testen.
Und ich bezweifel, dass du in einem neuen Projekt den Fehler bei "m := inttostr (2)" bekommst. Das heisst: Irgendwo hast du richtig Murks in deinem Programm. Etwa den Faden und Überblick verloren? ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:30 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