从Python代码创建单个exe文件

时间:2009-08-24 10:58:04

标签: python winapi executable

  

可能重复:
  py2exe - generate single executable file

我的一个朋友设法在一个exe文件中打包了一些Ruby脚本。当我尝试使用py2exe为Python脚本做同样的事情时,我也有几个pyd文件和一个dll。

是否可以将包含所有DLL和pyd文件的Python脚本打包到一个exe中,并删除其他文件?

2 个答案:

答案 0 :(得分:0)

根据py2exe.org

  

--bundle或-b命令行开关将创建更少的文件,因为二进制扩展,运行时dll,甚至Python-dll本身都捆绑到可执行文件本身,或者如果您愿意,也可以在库文件库中。< / p>      

...

     

使用级别1将.pyd和.dll文件包含到zip-archive或可执行文件本身中,并对pythonXY.dll执行相同操作。优点是您只需要为每个exe分发一个文件,但这将非常大。

There's also another little tutorial创建一个在运行时将DLL扩展到临时目录的exe,然后在Python退出时删除tempdir。

答案 1 :(得分:0)

This page可能对您有所帮助。更具体地说,您似乎可以通过将bundle_files设置为1并将zipfile设置为None来实现此目的。我没有测试它,如果你有其他的DLL文件,它可能无法正常工作。

该页面上的另一种方法看起来很笨拙:创建一个安装程序,在项目运行之前将项目扩展到临时目录,并在应用程序终止后删除临时目录。