[Python-de] Aufrufunterschiede zwischen C-Wrapper und native

Markus Heller markus at relix.de
Mon Jun 26 07:40:43 CEST 2006


Liebe Gurus,

ich habe ein sehr merkwürdiges Phänomen entdeckt :-) Wenn ich folgendes 
Programm von meiner in C++ eingebetteten Python-Instanz starten lasse, (ich 
springe die "go"-Funktion an) bekomme ich "Document is not well formed. 

Wenn ich das Programm standalone laufen lasse, sagt es mir, daß mein Dokument 
sehr wohl well-formed ist. 

Woran kann das liegen? 

>>>>>
#!/usr/bin/env python

from xml.sax.handler import ContentHandler
from xml.sax import make_parser
import sys

def parsefile(file):
    parser = make_parser()
    parser.setContentHandler(ContentHandler())
    parser.parse(file)


def go(DocURL,Content):
    filename = "pipeline.xml"
    try:
        parsefile(filename)
        print "%s is well-formed" % filename
    except Exception, e:
        print "%s is NOT well-formed! %s" % (filename, e)

go("test","test")
<<<<<

Die go-Funktion dient nur als Ansprungdummy für die Standalone-Ausführung. Bei 
diesem Programm handelt es sich im Wesentlichen um das Beispielaus dem 
Cookbook.

Danke schon mal!

Markus