PyInstaller无法更改快捷方式图标

9 投票
3 回答
16839 浏览
提问于 2025-04-18 10:45

我的问题是这样的:虽然我可以在可执行文件上设置任何我喜欢的图标,但我无法更改这个图标。

enter image description here

我尝试了各种方法,但每当我选择exe文件或者创建快捷方式时,这个PyInstaller的图标就会出现!

这是exe文件的样子:

enter image description here

这里有个棘手的地方,如果我设置了--onefile这个选项,就不会出现这个问题。如果我生成的是独立的exe文件,这个“额外”的不想要的图标就消失了!

如果你需要,这里是规格文件:

# -*- mode: python -*-
a = Analysis(['Backpack.py'],
             pathex=['C:\\Users\\Angelo\\Desktop\\PyInstaller-2.1\\Backpack'],
             hiddenimports=[],
             hookspath=None,
             runtime_hooks=None)

a.datas += [('back_ico_3.ico', 'C:\\Users\\Angelo\\Desktop\\PyInstaller-2.1\\back_ico_3.ico', 'DATA')]

pyz = PYZ(a.pure)
exe = EXE(pyz,
          a.scripts,
          exclude_binaries=True,
          name='Backpack.exe',
          debug=False,
          strip=None,
          upx=True,
          console=False , icon='back_ico_3.ico')
coll = COLLECT(exe,
               a.binaries,
               a.zipfiles,
               a.datas,
               strip=None,
               upx=True,
               name='Backpack')

3 个回答

0

你试过这个吗:

exe = EXE(pyz,
      a.scripts,
      exclude_binaries=True,
      name='Backpack.exe',
      debug=False,
      strip=None,
      upx=True,
      console=False , icon='C:\\Users\\Angelo\\Desktop\\PyInstaller-2.1\\back_ico_3.ico')
5

启用隐藏项目

首先,打开你的电脑,找到这个路径:C:\Users\User\AppData\Local\Microsoft\Windows\Explorer。在这里,你需要选择所有以 iconcachethumbcache 开头的文件,然后把它们全部删除。

接着,去这个路径:C:\Users\user\AppData\Local,找到并删除 IconCache.db 这个文件。

13

我也遇到过同样的问题,即使使用了 --onefile 这个选项。把 .exe 文件剪切到一个新的文件夹里就能解决了。

如果你的自定义图标还是不显示,可以试试删除 IconCache.db 文件,然后重启电脑。这个文件在 %localappdata% 这个位置。

撰写回答