List-Befehl= Exception Access Violation [Neu: INFO]
Übersicht

![]() |
Der EisvogelBetreff: List-Befehl= Exception Access Violation [Neu: INFO] |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo
Da bin ich schon wieder. Das Thema Exception Access Violation habe ich schon sehr oft angesprochen, und auch diese Mal hab ich wieder keinen Plan. Seit neustem bekomme ich durch einen einfach Funktions-Aufruf eine solche Fehlermeldung. Die Funktion befindet sich in einem Type und sieht so aus: BlitzMax: [AUSKLAPPEN] Function UpdateAll() Das komische ist, dass die Funktion schon vor der ersten Zeile abbricht, also ich bekomme in der Konsole keine "Debug" zu sehen. Der Debugger sagt mir dann nach dem Absturz, dass der Fehler am Anfang der For-Schleife liege, aber da kann nichts sein, da er diese Stelle noch nicht einmal ausführt. Etwas interessantes dazu ist, wenn ich folgende Zeile aus einer andere Funktion des selben Types auskommentiere, dann geht es, natürlich ist die eigentlich Programmfunktion dann aber außer Kraft gesetzt: BlitzMax: [AUSKLAPPEN] If Not SymGetSymFromName(hProc, Mid(addressp, 2), IMAGEHLP_SYMBOL.handle) Then Continue Noch ein Info ist, dass das ganze auf Windows 7 perfekt läuft, aber auf Windows XP kommt der Fehler. EDIT: Ich habe in den letzten paar Stunden noch weiter rumprobiert und habe den Schluss gezogen, dass die Liste für die Verwaltung meiner Objekte den Fehler erzeugt. Es ist ziemlich egal welche List -Befehl ich auf die entsprechende Liste anwende, nur wenn der List-Befehl ausgeführt wird, kommt dieser Error, andernfalls läuft es glatt. Oder wenn ich die oben genannte Zeile auskommentiere, dann funktionieren alle List Befehle wieder. Ich kapier inzwischen gar nichts mehr. MfG Der Eisvogel |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
Hummelpups |
![]() Antworten mit Zitat ![]() |
---|---|---|
nutzt du superstrict? wie deine Variablendeklaration aussieht vermutlich
ja. minimier den Code soweit du kannst um den Fehler zu isolieren. Mit den Bruchstücken an Code kann ich recht wenig anfangen, kannst du nicht mehr code posten? Und kommt der Fehler sofort beim starten? Vielleicht solltest du das Objekt vorher auf not null testen oder auch die Liste auf not null testen. Man sagt ja eignetlich das es keine null objekte in einer liste gibt nur so kannst du den fehler eventuell eingrenzen. Und wenn du sagst das der fehler nicht auftaucht wenn du SymGetSym... auskommentierst muss da doch irgendwas lustiges mit der Liste geschehen? |
||
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jep, das Problem war, dass ich keinen Zusammenhang von den Listen mit dieser Funktion gefunden habe. Inzwischen habe ich das Problem gelöst, es war ein Missverständnis zwischen mir und der WinAPI. Ich hatte die angaben für einen String zu hoch gesetzt, da in der Beschreibung der Funktion nicht stand das der 0-Terminator als zusätzlich gilt, somit hat die Funktion unter WindowsXP, dank mangelnder Überprüfung der WinAPI in den Listen-Specher geschrieben und diese total zerstört. Warum diese 2 Speicherstellen allerdings direkt nebeneinander liegen weiß ich nicht. Die Lösung des Problems war dann einfach die Länge des String um 1 zu verkürzen und alles war in Butter. Und nein, die Liste war nie Null.
Aber danke für deine Antwort. MfG Der Eisvogel |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group