Как я могу использовать –X: Frames в C # 2.0 для загрузки Ironpython? - PullRequest
2 голосов
/ 30 июня 2010

Я могу использовать ironpython 2.6 (не для .net 4), загрузить numpy, запустив ipy с -X: Frames или -X: FullFrames в командной строке.

Но, если я хочу использовать Ironpython /DLR в C # 2.0 для загрузки файла py, как я могу использовать -X: Frames или -X: FullFrames?

Я попробовал это так:

        var lang = Python.CreateLanguageSetup(null);
        lang.Options["Frames"] = ScriptingRuntimeHelpers.True;
        var setup = new ScriptRuntimeSetup();
        setup.LanguageSetups.Add(lang);
        var runtime = new ScriptRuntime(setup); 
        var engine = runtime.GetEngine("py");

        engine.ExecuteFile("test.py");  

Но это не такт работа!Итак, кто-нибудь может мне помочь?

Ответы [ 2 ]

1 голос
/ 01 июля 2010

Я не думаю, что фреймы работают или не работают, это ваша проблема. Если я возьму твой код и поставлю:

import sys
sys._getframe()

в test.py это работает, если у меня есть 'lang.Options ["Frames"] = ScriptingRuntimeHelpers.True;' линия и терпит неудачу, если я не делаю. Это означает, что опция работает нормально.

Так какую ошибку вы получаете? Возможно, вам нужно установить что-то, что обычно делает командная строка - например, sys.path, которому может понадобиться текущий каталог и / или ".". Или возможно site.py нужно импортировать. Или, может быть, IronClad установлен в каталоге DLL и загружен автоматически, поэтому вам нужно выполнить runtime.LoadAssembly (...) для его DLL.

0 голосов
/ 30 июня 2010

Ваш вопрос выглядит примерно так: Невозможно импортировать numpy во встроенный движок Ironpython

Но, может быть, вы должны дать больше информации о том, какие ошибки вы получили ...

...