Fehlermeldung auf andrem Betriebssystem - Was nun???
-
Ich habe folgende Fehlermeldung von einer Person erhalten die ein Programm von mir benutzt;
http://www.8ung.at/gen_d_pz_tr_seb/fehlermeldung.jpg
Die Meldung ist beim Starten des Programms mit einem Win2000 System gekommen.
So, was soll ich jetzt machen???
Die Fehlermeldung sagt mir eigentlich nicht wirklich warum mein Programm nicht geht, bzw. warum es nicht auf Win2000 geht, aber auf WinXP(Bei mir und auch bei anderen leuten). Ein Win2000 System auf dem ich meinen Compiler anwerfen könnte habe ich auch nicht.Ich habe jetzt absolut keine Ahnung wie ich weiter vorgehen soll weil ich selber diesen Fehler nicht reproduzieren kann (eben kein Win2000).
Vielleicht wisst ja ihr was ich machen könnte??? (Hoffentlich!)
edit: gehts jetzt??
-
Erstmal koenntest Du den Link korrigieren, damit wir die Fehlermeldung auch sehen koennen :p
-
jo, copy&paste kann ja nicht so kompliziert sein

Aber einen Ausnahme Fehler bekommst du halt, wenn du mist gebaut hast. Für sowas gibt es Debugger
Und wenn du das Ziel OS nicht hast, müssen logfiles reichen...
-
Hallo,
diese Fehlermeldung hatte ich schon oeffters beim Projekt auf der Arbeit.
Such nach nicht freigegebenen Speicherbereichen und/oder nach Speicherbereichen,
welche du versuchst 2 mal freizugeben.mfg
v R
-
Ich denke nicht, dass das was mit dem BS zu tun hat. Eher wahrscheinlich ist, dass der User deines Programmes im Programm auf einen Fall gestoßen ist, den du noch nicht ausprobiert hattest.
-
Aber wenn der Fehler doch am Programmanfang ist müsste ich doch längst auf ihn gestoßen sein, und das ist nicht der Fall. Also kann es nur an seinem System liegen.
-
Gen.d.Pz.Tr.Seb schrieb:
Also kann es nur an seinem System liegen.
Klar, du bist ja auch unfehlbar... (o;
Die Fehlermeldung sagt eindeutig, dass das Betriebssystem deine Anwendung abgeschossen hat um sich selbst zu schützen, weil die Anwendung irgendwo rumwuselt wo sie nicht sollte...
Ab zum code Review!
-junix
-
Ja aber wo ist da der Unterschied zwischen 2000 und xp?? Was erlaubt mir xp was 2000 nicht macht??
-
Es können z.B. solche feinen Unterschiede sein, daß unter 2000 das Programm nicht als Admin läuft, Du aber das Programm unter Admin-Rechten entwickelt und nur auf dieser Ebene getestet hast... das können 1000 Dinge sein.
Ohne Debugger fast unmöglich zu finden.
-
Ja aber wie kann ich dass nun machen wenn ich kein 2000er System zu verfügung habe?? Ich ja so nicht erfassen was mein Programm dort anstellt!
-
Entweder
- ein W2k installieren
- in das Programm ein Logging einbauen, das jeden Funktionsaufruf (natürlich abschaltbar) in einer Datei mitloggt. Dann siehst Du, bis wohin das Programm kommt, bzw. in welcher Funktion das passiert
-
OK, danke. Das hilft mir jetzt weiter!
Werde mal versuchen den Punkt 2 zu realisieren. (Aber was tun wenn nicht mal die erste Funktion aufgerufen wird??)

-
Dann kennst du den genauen Zeitpunkt wann dein Programm aussteigt und kannst auf Fehlersuche gehen. Debuggen musst du schon selber.
-
Du kannst dann das Logging auch noch gezielt unterteilen, bzw. Parameter mitschreiben, sobald Du die erste abstürzende Funktion lokalisiert hast.
-
Bei solchen Debug-Aktionen heisst es hald etwas kreativ zu sein. Mach dir ne Liste mit den Daten die dich interessieren, bzw. welche das Laufverhalten beeinflussen. Zunächst solltest du aber die exakte Zeile des Absturzes lokalisieren...
Ist hald mit etwas Arbeit verbunden...-junix
-
Bei linux/unix kann man beim Absturz eine core-Datei schreiben lassen. Gibts sowas nicht für Windows?
-
DrGreenthumb schrieb:
Bei linux/unix kann man beim Absturz eine core-Datei schreiben lassen. Gibts sowas nicht für Windows?
Dr. Watson is watching you...

-
Habt Ihr schon mal versucht, mit dem Dr. Watson-Log einen Bug zu finden?
Das geht... aber man muß die vom Compiler erzeugten Zwischendateien für die Exe noch haben, damit man das nachher in Deckung bringen kann. Es ist sehr aufwendig, daher hatten wir in der Vergangenheit entschieden immer wahlweise aktivierbare Klartext-Logfiles zu erzeugen.
-
Marc++us schrieb:
Habt Ihr schon mal versucht, mit dem Dr. Watson-Log einen Bug zu finden?
Geht das denn mit einem core dump unter Linux besser?!?!?!?!

-
ja, du lädst den coredump in den gdb und siehst sofort in welcher Zeile/Funktion usw. es abgeschmiert ist.
Weiß aber nicht ob das immer so glatt läuft, habs noch nie in der Realität gebraucht bzw. verwendet.