PyInstaller 无法更改快捷方式图标

Posted

技术标签:

【中文标题】PyInstaller 无法更改快捷方式图标【英文标题】:PyInstaller can't change the shortcut icon 【发布时间】:2014-08-13 08:42:55 【问题描述】:

我的问题如下,虽然我可以在可执行文件本身上设置我喜欢的任何图标,但我无法更改这个

我已经尝试了所有方法,但是当我选择 exe 文件或创建快捷方式时,这个 PyInstaller 图标会出现!

这是 exe 的外观

这是棘手的部分,如果我设置选项 --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')

【问题讨论】:

【参考方案1】:

你试过了吗:

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')

【讨论】:

【参考方案2】:

即使使用--onefile,我也遇到了同样的问题。将 .exe 剪切并粘贴到一个新目录中。

尝试删除IconCache.db 并重新启动,如果它仍然不显示您的自定义图标。它在%localappdata%

【讨论】:

【参考方案3】:

启用隐藏项

转到C:\Users\User\AppData\Local\Microsoft\Windows\Explorer。选择所有以 iconcachethumbcache 开头的文件并删除所有这些文件

转到C:\Users\user\AppData\Local并删除IconCache.db

【讨论】:

以上是关于PyInstaller 无法更改快捷方式图标的主要内容,如果未能解决你的问题,请参考以下文章

如何修改程序的图标(.exe后缀的)不是快捷方式的哦!

快捷方式图标无法正常显示

我们可以以编程方式更改在 iPhone 中创建的快捷方式的图标和名称吗

Inno setup更改桌面快捷方式图标

电脑桌面快捷方式显示不正确

Windows10下自定义桌面快捷方式图标--以Spyder为例