Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在Windows 10中向Pyinstaller添加图标_Python_Pyinstaller - Fatal编程技术网

Python 如何在Windows 10中向Pyinstaller添加图标

Python 如何在Windows 10中向Pyinstaller添加图标,python,pyinstaller,Python,Pyinstaller,我修改了规范文件以包含图标,但每次生成exe时,系统都会抛出以下错误: 2105 INFO: Writing RT_ICON 1 resource with 40 bytes Traceback (most recent call last): File "c:\program files (x86)\microsoft visual studio\shared\python36_64\lib\site-packages\win32ctypes\pywin32\pywintypes.py",

我修改了规范文件以包含图标,但每次生成exe时,系统都会抛出以下错误:

2105 INFO: Writing RT_ICON 1 resource with 40 bytes
Traceback (most recent call last):
  File "c:\program files (x86)\microsoft visual studio\shared\python36_64\lib\site-packages\win32ctypes\pywin32\pywintypes.py", line 35, in pywin32error
    yield
  File "c:\program files (x86)\microsoft visual studio\shared\python36_64\lib\site-packages\win32ctypes\pywin32\win32api.py", line 269, in UpdateResource
    handle, type, name, language, lp_data, len(lp_data))
  File "c:\program files (x86)\microsoft visual studio\shared\python36_64\lib\site-packages\win32ctypes\core\cffi\_resource.py", line 134, in _UpdateResource
    function_name='UpdateResource')
  File "c:\program files (x86)\microsoft visual studio\shared\python36_64\lib\site-packages\win32ctypes\core\cffi\_util.py", line 81, in __call__
    self._raise_error(function_name)
  File "c:\program files (x86)\microsoft visual studio\shared\python36_64\lib\site-packages\win32ctypes\core\cffi\_util.py", line 92, in _raise_error
    raise exception
OSError: [WinError 87] The parameter is incorrect
我尝试使用
--onefile
和.spec文件直接从pyinstaller生成exe文件

分组密码=无

将ico添加到exe文件

尝试以下代码:

from os import path 
script_dir = path.dirname(path.abspath(SPEC))
exe = EXE(pyz,
         a.scripts,
         a.binaries,
         a.zipfiles,
         a.datas,
         x, y,
         name='super_program',
         debug=False,
         strip=False,
         upx=True,
         runtime_tmpdir=None,
         console=True,
         icon=os.path.join(script_dir, 'icon.ico'))
请尝试以下代码:

from os import path 
script_dir = path.dirname(path.abspath(SPEC))
exe = EXE(pyz,
         a.scripts,
         a.binaries,
         a.zipfiles,
         a.datas,
         x, y,
         name='super_program',
         debug=False,
         strip=False,
         upx=True,
         runtime_tmpdir=None,
         console=True,
         icon=os.path.join(script_dir, 'icon.ico'))
根据:

-i,--icon FILE.ico:将该图标应用于Windows 可执行文件。FILE.exe,ID,从exe中提取ID为的图标。 FILE.icns:将图标应用于Mac OS X上的.app捆绑包

因此,您需要使用:

pyinstaller-F--icon“yourcon.ico”“yourscript.py”

根据:

-i,--icon FILE.ico:将该图标应用于Windows 可执行文件。FILE.exe,ID,从exe中提取ID为的图标。 FILE.icns:将图标应用于Mac OS X上的.app捆绑包

因此,您需要使用:

pyinstaller-F--icon“yourconion.ico”“yourscript.py”

exe=exe(pyz,a.scripts,a.binary,a.zipfiles,a.datas,[],name='sample',debug=True,bootloader\u ignore\u signals=False,strip=False,upx=True,runtime\u tmpdir=None,console=True,icon='logo.ico')exe=exe(pyz,a.scripts,a.binary,a.zipfiles,a.datas,[],name='sample',debug=True,bootloader\u ignore\u signals=False,strip=False,upx=True,runtime\u tmpdir=None,console=True,icon='logo.ico')