Autor Beitrag
VizeTE
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 30



BeitragVerfasst: Di 31.12.02 19:12 
Hallo alle zusammen.

Der Fehler "Zu wenig Festplattenspeicher" hört sich ja erst einmal recht eindeutig an aber irgendwie steige ich noch nicht dahinter.
Diesen Fehler bekomme ich bei einem Query auf eine Datenbank (Paradox 7) mit etwa 350 Einträgen (nicht mal 100kb). Zurückgegeben wird, würde die Abfrage funktionieren, ein Datensatz.
Ich habe 2 Partitionen auf den Rechner mit je über 4GByte freien Speicher. Die Auslagerungsdatei ist auch nur zu etwa 5% ausgelastet.

Hat jemand ne Idee woran das liegen könnte, würde mich freuen :wink:

Na dann noch einen guten Rutsch ins neue Jahr und schon mal danke im Voraus.
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Di 31.12.02 19:27 
Hi,

ohne Quelltext geht in so einem Fall nichts :!: Aber ich vermute mal ins Blaue, daß Du irgendeine Variable nicht initialisiert hast, die Deinem Programm eine Phantasiezahl "vorgaukelt". Fahr den Rechner mal neu hoch und seh nach, ob dieser Effekt noch auftaucht !

Gruß
Hansa
VizeTE Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 30



BeitragVerfasst: Di 31.12.02 20:04 
Ich dachte mir der Quellcode ist so simpel das man da nicht viel falsch machen kann. Aber hier ist er nochmal...
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
  AQuery := TQuery.Create(self);
  ABitmap := TBitmap.Create;

  AQuery.SQL.Add       ('SELECT Index, Cover, Beschreibung');
  AQuery.SQL.Add(Format('FROM "%s"', [Table.TableName]));
  AQuery.SQL.Add(Format('WHERE FilmIndex = %d', [AIndex]));
  AQuery.Open;

Der Fehler tritt in der letzten Zeile auf. AIndex wird als Parameter übergeben. Da steht auch was sinnvolles drin, was ja aber auch keine Rolle spielen sollte falls dies nicht der Fall ist.

Neu booten habe ich schon mal probiert, hilft aber auch nichts. Die dcu-Dateien löschen bringt ja auch manchmal was, aber auch hier Fehlanzeige

(01.01. 15:44 Tino) Code-Tags hinzugefügt.
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Di 31.12.02 20:16 
Hi,

Zitat:
Die dcu-Dateien löschen bringt ja auch manchmal was, aber auch hier Fehlanzeige


Was soll das denn bringen ? Dann löschst Du Dir höchstens gleich noch die DCU einer Fremdkomponente ohne Quelltext. Dann hast des gepackt. Am besten dann noch jede Minute den Papierkorb leeren um Festplattenplatz zu sparen. :mrgreen: Noch nie was von "build project" gehört ?

guten Rutsch
Hansa
VizeTE Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 30



BeitragVerfasst: Mi 01.01.03 14:50 
mmm...

Also ich hatte schon öfter den Fall das ich völlig wirre Fehlermeldungen bekommen habe die einfach keinen Sinn machen. Als ich dann die dcus gelöscht und das Projekt komplett neu compiliert habe ging es manchmal. Dcus von Fremdsoftware liegt bei mir eh woanders.
Keine Ahnung, vielleicht gibt es eine elegantere Lösung für diesen Effekt. Falls dies so ist kenn ich die aber nicht.

ciao
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Mi 01.01.03 15:34 
Hi,

das ist ja schön und gut, aber ich sehe ich muß Dir doch tatasächlich erklären, was das "build" macht , da ich hier ein Deutsch-englisches Delphi habe, konntest Dus wohl nicht verstehen. Hier ist die deutsche Version :

Zitat:
Wählen Sie Projekt / Projekt erzeugen, um alle Komponenten eines Projekts unabhängig davon, ob sie verändert wurden, neu zu compilieren. Wenn Sie globale Compiler-Direktiven oder -Optionen geändert haben, können Sie mit diesem Befehl sicherstellen, daß der gesamte Quelltext korrekt compiliert wird.

Diese Option entspricht dem Befehl Projekt / Compilieren, mit dem Unterschied, daß alles compiliert wird (Projekt / Compilieren compiliert nur Dateien, die seit der letzten Compilierung geändert wurden).


Dir ist hoffentlich klar: wenn alles neu compiliert wird, werden ALLE DCUs überschrieben und somit die alten gelöscht. Das Löschen von Hand kannst Du Dir also getrost sparen und gehst nicht das Risiko ein, doch einmal eine Fremd-DCU zu löschen. Wenn da der Quelltext fehlt wird diese natürlich NICHT compiliert.

Gruß
Hansa
VizeTE Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 30



BeitragVerfasst: Sa 04.01.03 00:34 
alles klar, wieder was dazu gelernt...
das kommt davon wenn man das Handbuch nicht ließt :wink: