pyinstaller:更改应用程序图标

ele*_*tro 3 python pyinstaller

第一次使用pyinstaller,我运行了pyinstaller appname.py --icon ='myicon.ico'。图标文件使用convertico.com进行了转换,并且位于我运行pyinstaller的同一目录中

在dist / appname /目录中,可执行的appname图标仍未更改。我做错什么了吗?规格文件为:

# -*- mode: python -*-

block_cipher = None

a = Analysis(['appname.py'],
         pathex=['/home/admin/appname'],
         binaries=None,
         datas=None,
         hiddenimports=[],
         hookspath=None,
         runtime_hooks=None,
         excludes=None,
         win_no_prefer_redirects=None,
         win_private_assemblies=None,
         cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data,
         cipher=block_cipher)
exe = EXE(pyz,
      a.scripts,
      exclude_binaries=True,
      name='appname',
      debug=False,
      strip=None,
      upx=True,
      console=True , icon='myicon.ico')
coll = COLLECT(exe,
           a.binaries,
           a.zipfiles,
           a.datas,
           strip=None,
           upx=True,
           name='appname')
Run Code Online (Sandbox Code Playgroud)

小智 7

它已经奏效,只是缓存图标有问题。如果将移到.exe另一个文件夹,则图标应更改。只是为了确保使用以下命令进行重建:

pyinstaller --onefile --icon=myicon.ico --clean yourapp.py
Run Code Online (Sandbox Code Playgroud)

--clean命令将清除缓存,并且您的图标将正确显示

  • 可以尝试的另一件事是系统中的[直接清理图标缓存](http://superuser.com/questions/499078/refresh-icon-cache-without-rebooting)。 (2认同)