将Python文件转换为executab

2024-04-26 21:12:06 发布

您现在位置:Python中文网/ 问答频道 /正文

Python:3.6.5

PyInstaller:3.4

我在使用PyInstaller、Py2Exe和autopy-to-Exe将我的项目转换为可执行文件时遇到问题。 我只想要一份文件。我需要我的资产文件夹在我的exe。 Auto Py To Exe生成的命令是:

pyinstaller -y -F -w -i "D:/Eigene Dateien/Documents/Coding/Python/hangman/icon.ico" --add-data "D:/Eigene Dateien/Documents/Coding/Python/hangman/assets/images";"images/" --add-data "D:/Eigene Dateien/Documents/Coding/Python/hangman/assets/sounds";"sounds/" --add-data "D:/Eigene Dateien/Documents/Coding/Python/hangman/assets/words.txt";"." "D:/Eigene Dateien/Documents/Coding/Python/hangman/main.py"

如果我在PowerShell中使用它,它会说:

^{pr2}$

抱歉,有些文本是德语:/

D:\Eigene Dateien\Documents\Coding\Python\hangman>pyinstaller -y -F -w -i "D:/Eigene Dateien/Documents/Coding/Python/hangman/icon.ico" --add-data "D:/Eigene Dateien/Documents/Coding/Python/hangman/assets/images";"images/" --add-data "D:/Eigene Dateien/Documents/Coding
/Python/hangman/assets/sounds";"sounds/" --add-data "D:/Eigene Dateien/Documents/Coding/Python/hangman/assets/words.txt";"." "D:/Eigene Dateien/Documents/Coding/Python/hangman/main.py"
75 INFO: PyInstaller: 3.4
75 INFO: Python: 3.6.5
76 INFO: Platform: Windows-10-10.0.17134-SP0
77 INFO: wrote D:\Eigene Dateien\Documents\Coding\Python\hangman\main.spec
80 INFO: UPX is not available.
82 INFO: Extending PYTHONPATH with paths
['D:\\Eigene Dateien\\Documents\\Coding\\Python\\hangman',
 'D:\\Eigene Dateien\\Documents\\Coding\\Python\\hangman']
82 INFO: checking Analysis
146 INFO: appending 'datas' from .spec
151 INFO: checking PYZ
187 INFO: checking PKG
189 INFO: Building because toc changed
189 INFO: Building PKG (CArchive) PKG-00.pkg
410 WARNING: One binary added with two internal names.
410 WARNING: ('libGLESv2.dll',
 'C:\\users\\meiss\\appdata\\local\\programs\\python\\python36-32\\lib\\site-packages\\PyQt5\\Qt\\bin\\libGLESv2.dll',
 'BINARY')
410 WARNING: was placed previously at
411 WARNING: ('PyQt5\\Qt\\bin\\libGLESv2.dll',
 'C:\\users\\meiss\\appdata\\local\\programs\\python\\python36-32\\lib\\site-packages\\PyQt5\\Qt\\bin\\libGLESv2.dll',
 'BINARY')
13466 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully.
13476 INFO: Bootloader c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\bootloader\Windows-32bit\runw.exe
13476 INFO: checking EXE
13478 INFO: Building because console changed
13478 INFO: Building EXE from EXE-00.toc
13483 INFO: SRCPATH [('D:\\Eigene Dateien\\Documents\\Coding\\Python\\hangman\\icon.ico', None)]
13483 INFO: Updating icons from ['D:\\Eigene Dateien\\Documents\\Coding\\Python\\hangman\\icon.ico'] to C:\Users\meiss\AppData\Local\Temp\tmpiwaatz96
Traceback (most recent call last):
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\meiss\AppData\Local\Programs\Python\Python36-32\Scripts\pyinstaller.exe\__main__.py", line 9, in <module>
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\__main__.py", line 111, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\__main__.py", line 63, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\building\build_main.py", line 838, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\building\build_main.py", line 784, in build
    exec(text, spec_namespace)
  File "<string>", line 32, in <module>
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\building\api.py", line 433, in __init__
    self.__postinit__()
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\building\datastruct.py", line 158, in __postinit__
    self.assemble()
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\building\api.py", line 522, in assemble
    icon.CopyIcons(tmpnm, self.icon)
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\utils\win32\icon.py", line 177, in CopyIcons
    return CopyIcons_FromIco(dstpath, [srcpath])
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\utils\win32\icon.py", line 134, in CopyIcons_FromIco
    for i, f in enumerate(icons):
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\utils\win32\icon.py", line 104, in __init__
    entry.fromfile(file)
  File "c:\users\meiss\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\utils\win32\icon.py", line 65, in fromfile
    self._fields_ = list(struct.unpack(self._format_, data))
struct.error: unpack requires a buffer of 16 bytes

这是IntelliJ(英语)的输出


Tags: pyinfoliblocalusersappdatadocumentspyinstaller