[IronPython] Access to current Python engine in C# (Silverlight)
Michael Foord
fuzzyman at voidspace.org.uk
Sun May 17 17:27:14 CEST 2009
Jimmy - did you get a chance to look at this?
If the code shown below *genuinely* gets a reference to the current
engine then shouldn't the search path be setup already?
Can you see what is wrong with the code below?
Thanks
Michael
Michael Foord wrote:
> Hello guys,
>
> I have a second use case for embedding IronPython in Silverlight. This
> is actually a dynamic application with a C# component that needs to
> programattically build a Python module.
>
> Again I have the same problem - imports in Python code fail. I would
> have expected that accessing the current runtime and fetching a Python
> engine would fetch the current Python engine, with the browser host
> correctly setup. Unfortunately that seems not to be the case. Can
> anyone spot problems with the following code:
>
>
> using Microsoft.Scripting.Silverlight;
> using IronPython;
> using IronPython.Hosting;
> using Microsoft.Scripting;
> using Microsoft.Scripting.Hosting;
>
> namespace EmbeddedSLModule
> {
> public class EmbeddedSLModule
> {
> private static string source = @"
> import something
> ";
> public static ScriptScope GetModule(){
> ScriptRuntime runtime = DynamicApplication.Current.Runtime;
> ScriptEngine engine = runtime.GetEngine("Python");
> ScriptScope scope = engine.CreateScope();
> ScriptSource script =
> engine.CreateScriptSourceFromString(source, SourceCodeKind.Statements);
> script.Execute(scope);
>
> return scope;
>
> }
> }
> }
>
>
> It works fine for code that doesn't import anything - but imports from
> within the xap file fail.
>
> Thanks
>
> Michael Foord
>
--
http://www.ironpythoninaction.com/
http://www.voidspace.org.uk/blog
More information about the Ironpython-users
mailing list