[IronPython] Using python docutils from C# - difference between shell and embedded engine?
Cesar Koers
ckoers at fulladsl.be
Tue Mar 13 11:13:07 CET 2007
Hi all,
I could use some help with embedding Python docutils
(http://docutils.sourceforge.net/) with C#. At this point, I'm able to
use the 'docutils.core.publish_string' function from the ipy.exe shell
with decent output.
However, when embedding the PythonEngine in my C# app, and executing
'docutils.core.publish_string' with the exact same arguments (*),
execution stops at a "raise TypeError" in Python code (in Debug mode, in
Release mode I believe it doesn't return from the Python code at all).
Repeatedly stepping out of the Python code (10-15 times) with the
debugger finishes the program.
VS shows that the TypeError is caused by indexing a null array (named
'children'). When examining the call stack though, I understood that the
program shouldn't even reach this code because it first checks the value
of 'len(children)' before accessing 'children'.
Could there be a problem with environment settings or something? I
compared path and loaded modules between ipy.exe session and embedded
engine; there are some differences which i can't explain.
Best regards,
C
(*) note that importing docutils.core requires executing
PythonEngine.InitializeModules first and
PythonEngine.Import("docutils.core") is not a substitute for
PythonEngine.Execute("import docutils.core")
PS: using "IronPython Community Edition r5" and VS Express 2005
More information about the Ironpython-users
mailing list