首页 > Python > python(py2exe)打包成exe执行文件,vista/win7下icon图标不显示问题的解决方案
2016
09-07

python(py2exe)打包成exe执行文件,vista/win7下icon图标不显示问题的解决方案

 windows下,在对使用python的编写的程序进行打包时,常用的工具就是py2exe了,该工具只需要一些脚本就看实现将python程序打包成一个exe文件。并且该exe程序的执行不需要系统预先安装python环境。

from distutils.core import setup
import py2exe
setup(
    name = 'xxxxx',
    description = 'xxxxx',
    version = '1.0',
    windows = [
                  {
                      'script': 'xxxx.py',
                      'icon_resources': [(1, r"c:\123\256x256.ico")],
                  }
              ],
   
    data_files=[
                   r"c:\123\256x256.ico",     
               ]
)

其中icon_resources参数是我们要讨论的重点:

按照上面的代码打包来的exe程序,在windows XP或server 2003系统下,我们可以看到exe的图标。但是当把程序拷贝到vista/win7下时,exe图标确变成了默认的"窗口"图标,无论怎么变换试图模式都使如此(如下图所示)。

首先先介绍一下ico文件,这对于理解其解决方案有很大帮助。

ico文件是windows下图片格式,我们看到的文件夹,执行文件等都有不同的图标显示,并且当我们切换视图模式(Thumbnails,Tiles,Icons, List, Details)时,文件的图标会以"不同"尺寸显示,确切的说,应该是不同的图标文件(尺寸亦不同)。ico文件里面可以有多个不同的图标文件以适应不同的视图模式,并且这些图标文件通常按尺寸大小的顺序存放。以windows XP/server 2003下支持的ico尺寸为16x16,32x32和48x48。vista/win7下则最多可以支持256x256。

问题关键在于ico文件中图标的顺序问题,XP和server 2003对顺序要求不高,无论是图标是按尺寸的正序还是倒序都可以正常显示,而然在vista/win7下确只能倒序。

ico编辑工具可以解决这个问题--Greenfish Icon Editor Pro,该工具不仅可以编辑图标文件,而且可以修改图标文件的顺序,详细步骤如下:
       首先:打开Greenfish Icon Editor Pro 软件并导入icon图片:

点击红色矩形框的icon选项->create icon from image 可以设置ico图片属性以及生成不同尺寸的icon图片,如下图:

有了这张图片可以看出,这些图标文件尺寸大小的顺序[见红色矩形框]为:16*16,32*32,48*48,64*64,256*256, 接下来我们要做的就是通过鼠标拖动图片改变这些图片的排列顺序:256*256,64*64,32*32,16*16  ,调整完毕后如下图所示:

接下来点击三个红色箭头指的那个红色矩形框保存按钮保存icon图片。然后导入该图片,就可以看到能够在vista/win7 上正常显示了,效果如下图:

以上就是对python(py2exe)打包成exe执行文件,vista/win7下icon图标显示问题的解决方案内容的介绍,望你会有所收获。

作者:admin
admin
TTF的家园-www.ttfde.top 个人博客以便写写东西,欢迎喜欢互联网的朋友一起交流!

本文》有 0 条评论

留下一个回复