python – .exe图标不会更改[py2exe]

我的图标文件myicon.ico与setup.py位于同一目录中.当我运行py2exe时,myproject.exe没有图标.我寻找解决方案,但找不到.

setup.py代码是:

from distutils.core import setup
import py2exe

setup(
   windows=[{
         "script": "myproject.py",
         "icon_resources": [(0, "favicon.ico")],
      }]
)

操作系统:Win8.1 64位

最佳答案
看来py2exe有a 4-year-old bug on handling icons,但由于它的描述,我设法使这个解决方法:

setup_dict = dict(
    windows = [{'script': "script.py",
                "icon_resources": [(1, "icon.ico")}],
)

setup(**setup_dict)
setup(**setup_dict)

这几乎构建了项目两次.如果您的项目很复杂并且需要很长时间来处理py2exe,您可以使用它来构建一个虚拟py文件:

import tempfile
tf = tempfile.NamedTemporaryFile(delete=False)
tf.close()
setup(
    windows = [{
        'script': tf.name,
        "icon_resources":[(1, "icon.ico")]}]
)
os.remove(tf.name)

只是不要忘记设置像你的项目一样的排除,否则你会得到你的dist文件夹与不需要的文件混乱.

转载注明原文:python – .exe图标不会更改[py2exe] - 代码日志