Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 04, 2025 19:00

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: EAccessViolation bei Objekt
BeitragVerfasst: Mo Apr 25, 2011 10:56 
Offline
Compliance Officer
Benutzeravatar

Registriert: So Aug 08, 2010 08:37
Beiträge: 460
Programmiersprache: C / C++ / Lua
Ich habe jetzt noch ein wenig dran gearbeitet und herausgefunden, dass der TextureManager das Problem ist:

Selbst wenn ich die Original-Unit vom Bomberman-Tutorial nehmen, kriege ich eine AccessViolation, wenn ich die Textur aktivieren will... :(

Arbeite mit D7, hat irgendwer ähnliche Probleme...

_________________
offizieller DGL Compliance Beauftragter
Never run a changing system! (oder so)


Zuletzt geändert von end am Sa Apr 30, 2011 18:10, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: EAccessViolation bei Objekt
BeitragVerfasst: Mo Apr 25, 2011 14:30 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Mein Pascal ist jetzt schon sehr eingerostet, aber was soll der Code machen? Du übergibst "Variablen" und weißt die dann zu bzw. überschreibst die? Das nennt man Seiteneffekte, wenn Funktionen Variablen ändern die ihnen nicht gehören.
Also zeig mal deinen echten Code und nicht nur deinen "ungefähren Code". ;)

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: EAccessViolation bei Objekt
BeitragVerfasst: Mo Apr 25, 2011 15:04 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 29, 2005 12:28
Beiträge: 2249
Wohnort: Düsseldorf
Programmiersprache: C++, C#, Java
Zitat:
aber bei Einzelschritt überspringt er diese einfach!

Der Compiler optimiert unter gewissen Umständen den Code. In diesem Fall hat er deinen Konstruktor als sinnlos/funktionslos erkannt und weg optimiert. Du solltest versuchen herauszufinden warum der Code sinnlos ist! Z.B. könnte es sein das der entsprechende Speicherbereich niemals gelesen wird oder der Speicher später erneut überschrieben wird.

"AccessViolation" klingt nach einem Zugriff auf einen Speicherbereich der nicht deiner Anwendung gehört. Dies kann vor allem durch nicht bzw. falsch initialisierte Werte passieren.

Zitat:
Darum krieg ich ne EAccVio. wenn ich sie im Render aufrufe:

Warum zeigst du uns dann deinen Konstruktor und nicht die Stelle an der die AccessViolation auftritt. Der Fehler liegt wahrscheinlich bei der Initialisierung dessen was später "im Render" aufgerufen wird.

_________________
Yeah! :mrgreen:


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: EAccessViolation bei Objekt
BeitragVerfasst: Mo Apr 25, 2011 15:24 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Der Aufruf und die Deklaration des Konstruktors würden mich auch noch interessieren.

greetings

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: EAccessViolation bei Objekt
BeitragVerfasst: Mo Apr 25, 2011 15:26 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 11, 2009 08:02
Beiträge: 532
Programmiersprache: pascal (Delphi 7)
Ist der Konstruktor in der Basisklasse als virtual deklariert, und dann mit override überschrieben? Bei mir ist´s auch mal passiert, dass er den Konstruktor nicht ausgeführt hat, weil er stattdessen gleich den geerbten genommen hat, und gelöst hab ich´s dann eben mit virtual und override. (sollte aber soweit ich weiß nicht passieren bzw ist nicht so beabsichtigt ;) )


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: EAccessViolation bei Objekt
BeitragVerfasst: Mo Apr 25, 2011 15:29 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Hm, das sollte kein problem sein, da er den geerbten mit inherited Create aufruft. Und in die andere Richtung darf das nur passieren, wenn er Klassentypenvariablen verwendet oder gleich TGLObject.Create aufruft, wobei letzteres definitiv falsch wäre ;).

greetings

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: Majestic-12 [Bot] und 16 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.011s | 17 Queries | GZIP : On ]