Einzelnen Beitrag anzeigen

TForm1

Registriert seit: 11. Jan 2014
128 Beiträge
 
FreePascal / Lazarus
 
#4

AW: Programm hängt sich beim Start auf

  Alt 2. Mai 2014, 22:12
Delphi-Quellcode:
    SetLength(TempLokArray, Index+1);
    //Daten werden ins Array geschrieben
    Array[Index].Var1:= Datensatz.Var1;
Du verwendest da zwei verschiedene Arrays. Willst du das wirklich?

Übrigens: Man verwendet nicht einfach den Variablennamen Array!
Oh, das ist natürlich ein Schreibfehler, den Code aus meinem Programm habe ich nachträglich noch verändert. Und dass man nicht Array als Variablenbezeichnung verwenden sollte, ist mir auch klar, sonst wäre mein Problem erst gar nicht aufgetreten und ich würde mich noch mit merkwürdigen Compilermeldungen rumärgern .
Wird natürlich sofort korrigiert.

Das mit dem Bereichscheck habe ich jetzt mal oberflächlich schnell probiert, bei dem Fall high(BufferArray)<0 kommen zwar Fehlermeldungen, die ich im einzelnen jetzt nicht analysiert habe, das muss ich dann noch mal ganz in Ruhe morgen machen; Aber im anderen Fall high(BufferArray)<Index wie gewohnt keine Fehlermeldung, nur hüpfendes Icon. Wie gesagt, ich werde mich morgen damit noch mal in Ruhe auseinandersetzen.

[EDIT] Ich weiß jetzt doch, warum bei der Bereichsprüfung im 1. Fall ein Fehler auftritt. Während der 1. Durchlauf noch "richtig" durchläuft, steht im Zweiten ja schon etwas in der Datei drin, deswegen gilt nicht mehr high(BufferArray)<0 und das Programm springt gleich in den Text zum auslesen der Daten und will auf Bufferarray[1] zugreifen, geht nicht, da Bufferarray ja nur ein Objekt beinhaltet. Das nur so am Rande.
Der Fehler sitzt immer vor dem Computer...

Geändert von TForm1 ( 2. Mai 2014 um 22:31 Uhr)
  Mit Zitat antworten Zitat