Pyinstaller 设置图标不会改变

Pyinstaller setting icons don't change

当我使用命令时:

pyinstaller.exe --icon=test.ico -F --noconsole test.py

所有图标都没有更改为test.ico。一些图标保留为 pyinstaller 的默认图标。

为什么?

所有图标更改

部分保持默认

我知道这是旧的什么的(并且不确定它是否是一个问题),但在搜索之后,我成功地使用了这个命令 --onefile:

pyinstaller.exe --onefile --windowed --icon=app.ico app.py

Google 在我搜索有关如何为我的 .exe 设置图标的答案时将我带到了此页面,因此也许它会对其他人有所帮助。

这里的信息是在这个站点找到的:https://mborgerson.com/creating-an-executable-from-a-python-script

我认为这可能与缓存有关(可能在 Windows Explorer 中)。我也在一些地方显示了旧的 PyInstaller 图标,但是当我将 exe 复制到其他地方时,所有旧图标都消失了。

下面的命令可以设置可执行文件的图标。

记住“.ico”文件应该出现在“Path_of_.ico_file”中给定路径的位置。

pyinstaller.exe --onefile --windowed --icon="Path_of_.ico_file" app.py

例如:

如果 app.py 文件存在于当前目录中并且 app.ico 存在于当前目录中的 Images folder 中。

那么命令应该如下所示。最终的可执行文件会在dist folder

里面生成
pyinstaller.exe --onefile --windowed --icon=Images\app.ico app.py

这是在从 Python 文件创建 exe 文件时添加图标的方法

  • 在 Python 文件存在的地方打开命令提示符

  • 类型:

    pyinstaller --onefile -i"path of icon"  path of python file
    

示例-

pyinstaller --onefile -i"C:\icon\Robot.ico" C:\Users\Jarvis.py

这是添加图标的最简单方法。

这是 pyinstaller 模块的错误。 东西应该是这样的吧:

File "c:\users\p-stu\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\utils\win32\icon.py", line 234, in CopyIcons
    except win32api.error as W32E:
AttrubuteError: module 'win32ctypes.pywin32.win32api' has no attribute 'error'
pyinstaller --clean --onefile --icon=default.ico Registry.py

对我有用

我有类似的问题。如果 pyinstaller 没有错误,请尝试更改 .exe 文件的名称。对我有用

如果你想设置默认图标,而不是 pyinstaller 为你设置的图标,在构建 EXE 时有一个选项,只需在 command.The 默认 os 中添加“-i NONE” ] 图标将应用于您的可执行文件。

pyinstaller --onefile --clean -i NONE --noconsole

参考 https://pyinstaller.readthedocs.io/en/stable/man/pyinstaller.html#windows-and-mac-os-x-specific-options

在我的例子中,文件的新图标没有出现在 dist 文件夹中,而是只有当我在桌面上移动图标时才会出现。

只需更改文件中的文件名 Explorer.I 遇到了同样的问题,但是在更改 .exe 文件的名称后,我在 pyinstaller 中提到的图标 命令出现。