您的位置:首页 > 其它

py2exe打包的配置和icon不显示问题的解决方法

2014-05-22 17:11 330 查看

py2exe

py2exe是一个制作Python发行版的小工具,它能够将.py程序编译成windows下脱离解释器的可执行程序。py2exe现在的最新版是0.69版,可以去http://www.py2exe.org/下载。安装过程也十分简便。

原创:/article/5367804.html

配置和使用方法

在需要编译的程序所在目录下建立一个新的.py文件,假设要编译的文件是main.py,配置文件是compile.py:

1 # compile.py
2 from distutils.core import setup
3 import py2exe
4
5 options = {"py2exe":
6     {"compressed": 1,
7      "optimize": 2,
8      "bundle_files": 1,
9      "dll_excludes": ["w9xpopen.exe"]}
10     }
11 setup(
12     windows=[{"script":"HuffmanCompress.py",
13               "icon_resources":[(1, "compresslogo.ico")]}],
14     options = options,
15     zipfile=None,
16     data_files=[("images",
17            ["images\compress.png", "images\info.png",
18             "images\logo.png","images\logout.png",
19             "images\pythonPower.png",
20             "images\uncompress.png"])]
21       )

在cmd下进入当前目录,执行

python compile.py py2exe

如果找不到msvcp90.dll就去网上下载一个放在C:\Windows\System32下。如果没有错误在dist,目录下就会有我们想要的exe文件。我的目录下原来有个w9xpopen.exe,这个是windows 9x下的管道程序。在options中加入:

"dll_excludes": ["w9xpopen.exe"]}

便可以将这个程序打包入.exe中。

程序图标(icon)不显示的问题

为了是程序美观,尝试加入图标文件代替难看的.exe图标。于是便制作了一个256×256的icon文件,利用下面的配置加入:

"icon_resources":[(1, "compresslogo.ico")]

但是结果并没有如预想中的那样,依旧是丑陋的原图标。后来在stackoverflow上找到了方案,在vista和win7中图标是由多个大小不同的ico文件组成了,所以需要利用png2ico将多个png图片转化为一个ico文件。其中png2ico小工具可以去这里下载。将原来的的png文件做成16×16,32×32,48×48,248×248四个大小,然后用如下命令完成转化,假设原来的png文件为source248×248.png等四个文件,注意四个文件必须从大到小排列,否则做出的ico图标仍然无法显示

png2ico myicon.ico source248×248.png source48×48.png source32×32.png source16×16.png

然后重新执行一遍

python compile.py py2exe

即可得到需要的样式。

下图是转化之前的效果



这个是转化之后的效果。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: