admin管理员组文章数量:1566602
最近开始学习Python,不禁被他的强大折服。
不过在Linux上写出来的一些小工具总是需要分享给其他人使用的,尤其是在没有安装Python解释器的Win平台上。于是就出现了一系列打包工具,最近发现py2exe可以支持打包成单一文件,这可是相当有诱惑力的~,回想之前用的cx_Freeze虽然也很强大,但貌似不能打包成单一文件,这也就意味着把小工具拷给别人的时候是一大坨文件,包括各种dll的库,瞬间档次低了很多啊啊啊
综上所述,尝试使用py2exe打包Python文件,setup.py的编写神马的网上一搜一大把,就不详细说明了,有机会的话之后我会整理一个完整的blog来说明其参数和编写,这部分不是此文重点,代码贴在最下面,有需要的童鞋可以看一看
本文的关键点来了,明明指定了文件图标,但生成的文件确是无图标的。
绝对不能忍受!!!图标文件应该是没问题的啊,在XP(虽然他老人家已经退休了)上图标现实也是正常的啊
经过一串的谷哥度娘,发现是由于Win7和XP在处理ico文件上是有区别的,问题关键在于ico文件中图标的顺序问题,XP和server 2003对顺序要求不高,无论是图标是按尺寸的正序还是倒序都可以正常显示,而在vista/win7下确只能倒序,故出现了上述的问题。
经过紧张的调序工作(使用软件GreenfishIconEditorProPortable),结果顺序如图,终于可以显示(ResHacker)了,截图如下(忽略我家MiKu小妹妹~):
感觉还不错呢。。。等等。。。。。怎么有种不详的预感。。。。。尼玛,坑爹啊,明明有放256的大图啊,为什么不给劳资显示大图呢!!!
镇定下来思考一下,直接研究一下现有的能显示大图标的exe不就OK了,于是我随手打开了一个,如下图,我擦嘞,竟然还有256色的图!于是重新制作ico文件
替换后,呼~终于看到大图的MiKu小妹妹啦~~
done.
PS:关于此问题在stackoverflow上已经有过讨论,点我跳转
setup.py文件源码
# -*- coding: utf-8 -*-
__author__ = 'Moore.Huang'
from distutils.core import setup
import py2exe
includes = ["encodings", "encodings.*"]
options = {"py2exe": {"compressed": 1, "optimize": 2, "includes": includes, "bundle_files": 1}}
setup(
version = "0.1.0",
description = u"[程序描述]",
name = "FormatTable",
options = options,
zipfile = None,
# 生成有指定图标的exe
windows = [{"script": "[源码文件名].py",
"icon_resources": [(1, u"[图标名].ico")]
}]
# 生成无图标exe
# windows = [{"script": "[源码文件名].py"}]
)
本文出自 “幻冥极地” 博客,请务必保留此出处http://littlemo.blog.51cto/3184796/1399470
版权声明:本文标题:py2exe打包在Windows7上的图标问题 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1726948520a1091365.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论