从Iron Python生成.NET程序集

Leo*_*mps 18 .net ironpython assemblies

我有一个我想运行的Iron Python脚本,然后让ipy解释器输出一个我可以在其他机器上运行的程序集.我怎么做?有没有我可以传递给ipy.exe的开关?

Phi*_*rie 9

使用SharpDevelop

一种方法是使用SharpDevelop,它可以轻松地构建程序集(可执行文件和类库).

这个过程很简单:

  • 创建Python解决方案(选项包括:类lib,控制台或Windows应用程序)
  • 正常编写Python代码
  • 构建您的解决方案或项目

.exe和.dll文件将位于相关的构建输出目录(Debug或Release)中.


使用pyc.py

另一种方法是使用名为pyc.py的IronPython命令行编译器脚本.

编译器脚本可以在以下目录中找到: [IP_install_dir]\Tools\Scripts

用法:
ipy.exe pyc.py /main:Program.py Form.py /target:winexe


注意:要使编译的exe运行,您需要在与可执行文件相同的目录中包含以下文件:

IronPython.dll
IronPython.Modules.dll
Microsoft.Dynamic.dll
Microsoft.Scripting.Core.dll
Microsoft.Scripting.Debugging.dll
Microsoft.Scripting.dll
Microsoft.Scripting.ExtensionAttribute.dll
Run Code Online (Sandbox Code Playgroud)


λ J*_*kas 8

IronPython附带了一个名为Pyc或Python命令行编译器的工具.如果您安装了最新版本的IronPython 2.6,那么您pyc.py可以在C:\Program Files (x86)\IronPython 2.6\Tools\Scripts系统上安装IronPython或在任何地方使用IronPython.如果您有早期版本的IronPython,那么pyc.py将在样本包中单独下载.

随着pyc.py你可以创建从你的Python脚本控制台或Windows组件.基本用法如下:

ipy pyc.py /out:myprogram.exe /main:mainfile.py /target:exe program.py support.py
Run Code Online (Sandbox Code Playgroud)

上述将生成称为组件myprogram.exe(输入/输出),这是一个控制台应用程序(/目标),将在执行代码mainfile.py第一(/主),也将包括从代码program.py和support.py在装配.