我创建了一个IronPython脚本,可以从Python库中导入,例如os
,sys
等,以及.NET库。
它在我的Visual Studio IronPython解决方案中运行得非常好但是我需要部署它,以便其他没有安装IronPython或Python的人可以运行它。
我该怎么做?
答案 0 :(得分:10)
要求:
ipy.exe
C:\Program Files (x86)\IronPython 2.7.1\
{li> pyc.py
C:\Program Files (x86)\IronPython 2.7.1\Tools\Scripts\
MyProgram.py
将是您的计划。
MyProgram.py
所在的位置)内,创建一个名为“deploy。”的文件夹。cd deploy
。"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
这将在deploy
文件夹中为MyProgram生成一个dll和一个exe。
如果您尝试运行MyProgram.exe
并导入os
等库,则可能会获得No module named ...
。
因为,我正在使用os
,我收到此错误:
如果您运行“MyProgram.exe”而您正在使用标准库,则可能会出现No module named...
错误。
就我而言,我得到了:
未处理的异常:IronPython.Runtime.Exceptions.ImportException:No module na med os
...
要解决此问题,请将Lib
文件夹从C:\Program Files (x86)\IronPython 2.7.1\
复制到刚刚创建的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
文件夹然后发货了!