Autor Beitrag
zcidq8
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP, Win 98
D6 Prof.
BeitragVerfasst: Do 13.10.05 19:13 
Hallo,

ich programmiere jetzt schon länger an einem Programm und alles lief einwandfrei. Doch plötzich gibt delphi mir immer eine Fehlermeldung:

Im Projekt NAME ist eine Exception der Klasse EAccessViolation aufgetreten. Meldung: Access violation at adress 0053762B in module Programm.exe Read o address 00000064.

Was bedeutet dieser Fehler? Woher stammt der Fehler? Warum lief bis jetzt alles einwandfrei und plötzlich dieser Fehler?

Wer hat Erfahrung mit solchen Fehlern und Lösungen?
Einloggen, um Attachments anzusehen!
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Do 13.10.05 19:14 
Um das herauszufinden benötigen wir die Zeile(n) vor der, die im Screenshot sichtbar ist ;)

AXMD
walvaterwotan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 23



BeitragVerfasst: Do 13.10.05 20:45 
schau mal auf meinen Beitrag: "DoSCommand erzeugt EAccessViolation".

Dort hab ich anch dem gleichen Prob gefragt und bis jetzt konnte noch keiner helfen.
Mal schauen ob es bei dir was wird :(
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Do 13.10.05 21:08 
Eventuell falsch/nicht initialisierte Objeckte wie etwa so: TObjeckt.Create()
zcidq8 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP, Win 98
D6 Prof.
BeitragVerfasst: Fr 14.10.05 14:45 
Titel: screenshot
Hallo,

hier ist erst mal der screenshot von der Fehlermeldung.
Einloggen, um Attachments anzusehen!
MisterBum83
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 245
Erhaltene Danke: 2

WIN XP
Delphi 6
BeitragVerfasst: Fr 14.10.05 14:48 
Kann es vielleicht sein, das er in der Procedure TabelleWocheGesamtErzeugen abstürzt.
Bist du schonmal im DebugModus durchgegangen?
uall@ogc
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1826
Erhaltene Danke: 11

Win 2000 & VMware
Delphi 3 Prof, Delphi 7 Prof
BeitragVerfasst: Fr 14.10.05 14:51 
würd auch sagen es liegt an TabelWochenGesamtErzeugen

aber mal ne andere frgae du versuchst doch nicht etwa mit GetCurrentDir den Pfad der andweung auszulesen oder?

_________________
wer andern eine grube gräbt hat ein grubengrabgerät
- oder einfach zu viel zeit
zcidq8 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP, Win 98
D6 Prof.
BeitragVerfasst: Fr 14.10.05 15:54 
Titel: GetCurrentDir
Hallo,

ich lese mit GetCurrentDir den Pfad aus. Womit geht es denn Besser?
uall@ogc
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1826
Erhaltene Danke: 11

Win 2000 & VMware
Delphi 3 Prof, Delphi 7 Prof
BeitragVerfasst: Fr 14.10.05 15:58 
[OT]

es sollte mit ExtractFilePath(ParamStr(0)) gemacht werden

[/OT]

_________________
wer andern eine grube gräbt hat ein grubengrabgerät
- oder einfach zu viel zeit
Martin1966
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1068

Win 2000, Win XP
Delphi 7, Delphi 2005
BeitragVerfasst: Fr 14.10.05 15:58 
Die eigentliche Frage ist nicht wo mit es besser geht sondern welchen Pfad du haben möchtest. Möchtest du das Anwendungsverzeichnis oder das Arbeitsverzeichnis?
zcidq8 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP, Win 98
D6 Prof.
BeitragVerfasst: Fr 14.10.05 16:03 
ExtractFilePath(ParamStr(0)) funktioniert schon mal.
Martin1966
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1068

Win 2000, Win XP
Delphi 7, Delphi 2005
BeitragVerfasst: Fr 14.10.05 16:05 
Und dir ist klar welches Verzeichnis du damit zurück bekommst?
zcidq8 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP, Win 98
D6 Prof.
BeitragVerfasst: Fr 14.10.05 16:14 
Das Verzeichnis incl. Schrägbalken meiner Anwendung.

Aber zurück zu meiner Fehlermeldung. Die gleiche Fehlermeldung tritt auch auf wenn ich die Zeile 166/167 weglasse. Dann bleibt mein Programm an der gleichen Stelle stehen. Dann kann es also nicht an TabelleWochenGesamtErzeugen liegen.?!?!
uall@ogc
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1826
Erhaltene Danke: 11

Win 2000 & VMware
Delphi 3 Prof, Delphi 7 Prof
BeitragVerfasst: Fr 14.10.05 16:25 
auch solltest besser kein pfad.caption benutzen wenn du des selbe in X stehen hast

aber warum genau der fheelr kommt kann ich net sagen wie sieht denn die fuunktion von Erzeugen aus?

_________________
wer andern eine grube gräbt hat ein grubengrabgerät
- oder einfach zu viel zeit
zcidq8 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP, Win 98
D6 Prof.
BeitragVerfasst: Fr 14.10.05 18:01 
Das Merkwürdige an der Sache ist das ein Tag vorher alles lief und am nächsten Tag war der Fehler da ohne das ich irgendwas geändert habe. Das verstehe ich ja nicht. Alle Prozeduren liefen einwandfrei.!?!?!?!?!?!?!
walvaterwotan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 23



BeitragVerfasst: Fr 14.10.05 19:01 
Ja und genau den gleichen konnte ich bei mir auch beobachten. Erst funktioniert es und plötzlich ohne Änderungen geht es nicht mehr.

Was genau sagt denn nun der Fehler eigentlich aus ? :(
zcidq8 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP, Win 98
D6 Prof.
BeitragVerfasst: Fr 14.10.05 20:21 
EAccessViolation ist die Exception-Klasse für Fehler, die durch ungültige Speicherzugriffe ausgelöst werden. Aber wo die Ursache liegt? Keine Ahnung.
Kokel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 79

XP Prof
delphi 2006 Prof.
BeitragVerfasst: Fr 14.10.05 20:46 
Sieht für mich auch nach nem falschen lese schreibzugriff im memory aus.
Also beim create wird speicher reserviert.
Ich denke das der fehler beim: Tablewochengesamterzeugen entsteht.
Da du den fehler nicht direkt korrigieren kannst (da delphi die speicherbereiche in diesem fall für dich verwaltet.)
Du solltest mal versuchen den Create code zu verschieben. Vielleicht zwingst du Delphi einnen anderen Speicherbereich zu wählen.
Im übrigen kann es auch auf einem defekten Rambaustein hinweisen.
zcidq8 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP, Win 98
D6 Prof.
BeitragVerfasst: Sa 15.10.05 06:29 
TabelleWochenGesamtErzeugen wird nur aufgerufen falls die Tabelle noch nicht existiert. Da sie aber schon existiert wird die Prozedur gar nicht erst aufgerufen. Denke nicht das der Fehler daran liegt.
Habe die Create Methoden in alle möglichen Variatonen verschoben, der Fehler bleibt.
Habe ein Testprogramm mal meinen Speicher checken lassen. Alles ok.
MrSaint
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1033
Erhaltene Danke: 1

WinXP Pro SP2
Delphi 6 Prof.
BeitragVerfasst: Sa 15.10.05 07:34 
Setz mal nen Haltepunkt in der Zeile und schau mal was da nil ist. Also: Einmal mit der Maus über "DataModulWochenplan" und einmal über das "TableGesamt" und jeweils kurz warten (alternativ Abfrage mit Strg+F7). Dann weißt du was nicht initialisiert ist...



MrSaint

_________________
"people knew how to write small, efficient programs [...], a skill that has subsequently been lost"
Andrew S. Tanenbaum - Modern Operating Systems