1

我现在有点被 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')

有谁知道出了什么问题?

4

1 回答 1

1

好的,我刚刚想通了。

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

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

请参见此处->使用命令行构建 C#/.NET 时如何设置配置?

于 2013-07-12T15:35:04.793 回答