AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Access Violation ( kann nicht herausfinden an welcher stelle
Thema durchsuchen
Ansicht
Themen-Optionen

Access Violation ( kann nicht herausfinden an welcher stelle

Ein Thema von jmd anders · begonnen am 11. Dez 2006 · letzter Beitrag vom 11. Dez 2006
Antwort Antwort
jmd anders

Registriert seit: 13. Mai 2004
84 Beiträge
 
#1

Access Violation ( kann nicht herausfinden an welcher stelle

  Alt 11. Dez 2006, 20:55
Hallo zusammen, ich hab ein programm geschrieben in dem nach einiger Zeit(mal dauerts länger >4h eine Access Violation auftritt, wenn ich dann auf break klicke, kriege ich nur das cpu fenster mit assembler anweisungen, ich kann dann noch zum delphi code switchen, da bleibt er aber mit dem roten balken an unterschiedlichen stellen stehen(also mal an dieser stelle, mal an einer anderen).
auf dem aufruf stack liegt dann als letzte anweisung sysallocem oder realloc mem.

es scheint, als scheine der fehler schneller zu kommen, wenn die systemauslastung größer ist, aber das ist nur eine waage vermutung.

daher würde ich gerne mal wissen, was eine access violation im eigentlich ist und wo sie am häufigsten vorkommt.

und wie kann ich vielleicht was anfangen, was in dem cpu fenster steht, oder wie kann ich an die stelle kommen an der in meinem code was falsch ist.
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Access Violation ( kann nicht herausfinden an welcher st

  Alt 11. Dez 2006, 21:00
Eine AccessViolation ist eine Zugriffsverletzung, passiert dann, wenn du auf nicht zugewiesenen Speicher/nicht erzeugte Klassen zugreifen willst.

Eine AV ist der böseste Fehler, den es überhaupt gibt.

Das CPU-Fenster bringt dabei in 99% der Fälle gar nix, am besten du versuchst eher, den Fehler mit Breakpoints einzugrenzen.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Access Violation ( kann nicht herausfinden an welcher st

  Alt 11. Dez 2006, 21:04
Compiliere auch mal mit Debug-DCU's. Evtl bekommst Du dann Code zu Gesicht.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Sunlight7
Sunlight7

Registriert seit: 17. Sep 2006
Ort: Sonnensystem, Zentral
1.522 Beiträge
 
Delphi 5 Standard
 
#4

Re: Access Violation ( kann nicht herausfinden an welcher st

  Alt 11. Dez 2006, 21:11
Zitat von jmd anders:
... wenn ich dann auf break klicke.
Hast Du die Option "Bei Exceptions Anhalten" aktiviert (Kann in Deiner Delphi etwas anders heissen)?

Zitat von 3_of_8:
Eine AV ist der böseste Fehler, den es überhaupt gibt.
Hmm, ich find' ne GP Fault viel böser
Windows: Ja - Microsoft: Nein -> www.ReactOS.org
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Access Violation ( kann nicht herausfinden an welcher st

  Alt 11. Dez 2006, 21:16
Hi,

suchebesonders an den Stellen wo du mit eigenen Zeigern (Pointer) arbeitest. Oft werden aus C-dll's Strukturen als Zeiger übergeben oder müssen an diese übergeben werden. Ich hatte auch schon mal so blöde Fehler. Da hat eine Dll einen Zeiger auf eine Struktur erwartet und ich hatte den Record nicht richtig definiert.

Gruß Oki
  Mit Zitat antworten Zitat
jmd anders

Registriert seit: 13. Mai 2004
84 Beiträge
 
#6

Re: Access Violation ( kann nicht herausfinden an welcher st

  Alt 11. Dez 2006, 23:08
mit den debug dcus, bleibt der debugger an der stelle in getmem.inc stehen:
{Unlock the block type}
mov TSmallBlockType[ebx].BlockTypeLocked, al
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Access Violation ( kann nicht herausfinden an welcher st

  Alt 11. Dez 2006, 23:11
Zitat von Sunlight7:
Hmm, ich find' ne GP Fault viel böser
Damit meinte ich Debuggbarkeit in Relation zur Häufigkeit.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:28 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