[Python-de] Seitenfehler in python22.dll

Gerhard Häring haering_python at gmx.de
Thu May 16 19:41:35 EDT 2002


* Marcus K. <m_konermann at gmx.de> [2002-05-16 11:28 +0200]:
> Hallo !
> 
> ich probiere grad einige Beispiele aus dem Buch "Programming Python" 
> sec. Edition und bei Example 20-13 (Thema Embedding) bin ich auf einen 
> äusserst eigenartigen Fehler gestossen. Ich habe die objects-low.c Datei 
> unter Visual C++ kompiliert und gelinkt. Die Ausführung der 
> objects-low.exe vollzog sich unter dem Compiler ohne Probleme und 
> Fehler. Sobald ich allerdings versucht hatte unter einem Konsolenfenster 
> die .exe Datei mal zu starten brach das Programm sofort ab mit der 
> Meldung einer ungültigen Seite in python22.dll.

Zurückblättern? ;-) Im Ernst, ein Pointer zeigt ins höchstwahrscheinlich
ins Nirvana.

> Die Suche nach dieser Datei ergab, dass sie sich ausschließlich im
> ..\windows\system Verzeichnis befindet und zu meiner aktuellen Python
> ver. 2.2.1 gehört.

Verwendest du zum Debuggen nicht die Debug-Versionen von Python,
Python-DLL, etc.? Die hattest du doch vor kurzem übersetzt?!

> An anderer Stelle hatte ich mal gelesen, dass man unter Windows mit
> dem Gebrauch der Bibliotheken äusserst vorsichtig sein muss, da es
> ansonsten zu unangenehmen Abstürtzen kommen kann.

Mich hat's bisher meistens mit inkompatiblem FILE* auf die Schnauze
gehauen. Man muss AFAIK einfach .exe und .dll gegen die selben
Bibliotheken linken, sonst kann's tatsächlich krachen. Aber dafür erfand
ja jemand den Debugger :-)

> Aus dem Fehler entnehme ich, dass etwas ähnliches bei mir jetzt wohl
> auch eingetroffen ist. Die letztmalige Deinstallation und
> Neuinstallation brachte wenig Erfolg.

Auch wenn du dir dieses Verhalten unter Windows angewöhnt hast, ist es
mehr Vodoo als gezielte Problemlösung.

> Hat jemand auch schon mal solch komische Meldungen erhalten oder weiss
> jemand woraus sie letztendlich resultieren ?  Ich möchte meine
> Programme schliesslich auch mal ohne Compiler starten können :-)

s/Compiler/Debugger ? Übersetz das Teil halt noch mal im Debug-Modus und
schau dir an, an welcher Stelle der Fehler auftritt.

Richtige Programmierer [tm] brauchen auch gar keine Debugger, sondern
machen das mit gezieltem Einfügen von printf :-)

Gerhard
-- 
This sig powered by Python!
Außentemperatur in München: 23.7 °C      Wind: 1.9 m/s



More information about the Python-de mailing list