从python运行ironpython脚本:sandbox,loadFromRemoteSources

时间:2013-07-12 13:15:04

标签: python ironpython sandbox .net-assembly

我现在对Iron Python很感兴趣。我想做的就是从python运行一个ironpython脚本。在我的ironpython脚本中,我导入一个名为mydll.dll的.net程序集。

我想到了两种方法。第一个是使用pyc.py并从ironpython脚本创建一个exe文件。它不起作用(我不记得错误信息是什么,但我记得浪费了相当多的时间)。

我最近想到的第二种方法就是使用subprocess.popen从我的python脚本中调用ipy.exe。不幸的是,它出现了关于“沙盒”和“loadFromRemoteSources”的错误。

以下是在我的python脚本中引入错误的代码:

process = subprocess.Popen(["ipy.exe", "myironpythonscript.py"])

这是myironpythoncript.py中的内容:

from clr import AddReferenceToFile
AddReferenceToFile ('mydll.dll')

有人知道什么是错的吗?

1 个答案:

答案 0 :(得分:1)

好的,我只是想通了。

它确实有效,你需要添加一个名为ipy.exe.config的配置文件,其中包含以下内容:

<configuration>
 <runtime>
  <loadFromRemoteSources enabled="true"/>
 </runtime>
</configuration>

见这里 - &gt; How do I setup configuration when I use command line to build C#/.NET?