2012-07-31 52 views
4

我创建了一个IronPython的脚本,从Python库进口,如ossys等以及.NET库。部署IronPython的脚本或静态建立一个应用程序

它运行从我的Visual Studio的IronPython的解决方案完全没有问题,但我需要部署的,这样其他没有IronPython的或安装了Python可以运行它谁的人。

我该怎么做?

回答

10

要求:

  • ipy.exeC:\Program Files (x86)\IronPython 2.7.1\
  • pyc.pyC:\Program Files (x86)\IronPython 2.7.1\Tools\Scripts\
  • MyProgram.py将是你的计划。

    1. 在您的项目文件夹(其中MyProgram.py是)中,创建一个名为“deploy”的文件夹。
    2. 在命令提示符下运行cd deploy
    3. 运行"C:\Program Files (x86)\IronPython 2.7.1\ipy.exe" "C:\Program Files (x86)\IronPython 2.7.1\Tools\Scripts\pyc.py" /main:..\MyProgram.py /target:exe

这将生成一个DLL,并在deploy文件夹MyProgram一个exe。

如果您尝试运行MyProgram.exe并且您正在导入os等库,则可能会收到No module named ...

,因为我使用的os,我得到这个错误:

如果你运行“MyProgram.exe”和你使用标准库,你可能会得到No module named...错误。

在我的情况,我有:

Unhandled Exception: IronPython.Runtime.Exceptions.ImportException: No module na med os
...

要解决此问题,从C:\Program Files (x86)\IronPython 2.7.1\复制Lib文件夹,您刚才创建的文件夹deploy。然后,您导入的是引发错误的库之前,修改MyProgram.py这样的:

import sys 
sys.path.append("Lib") 

# Followed by library imports that were causing you trouble: 
import os 

最后一步,从C:\Program Files (x86)\IronPython 2.7.1\以下文件复制到deploy文件夹以及:

- IronPython.dll
- IronPython.Modules.dll
- Microsoft.Dynamic.dll
- Microsoft.Scripting.dll

现在你可以拉上你的deploy文件夹,并将其运送!

相关问题