Python Pyinstaller ERRNO 22 无效参数

问题描述 投票:0回答:5

我正在尝试使用 pyinstaller 使我的 python 代码更加用户友好,直到昨天,它还在工作。今天运行时出现以下错误:

C:\Users\user\Desktop\PythonProjects38>pyinstaller --onefile TransmittalEXE.py
83 INFO: PyInstaller: 4.0
83 INFO: Python: 3.8.5
83 INFO: Platform: Windows-10-10.0.18362-SP0
84 INFO: wrote C:\Users\user\Desktop\PythonProjects38\TransmittalEXE.spec
...
31623 INFO: checking PKG
31623 INFO: Building PKG because PKG-00.toc is non existent
31628 INFO: Building PKG (CArchive) PKG-00.pkg
41852 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully.
41915 INFO: Bootloader c:\users\user\desktop\pythonprojects38\venv\lib\site-packages\PyInstaller\bootloader\Windows-32bit\run.exe
41915 INFO: checking EXE
41917 INFO: Building EXE because EXE-00.toc is non existent
41921 INFO: Building EXE from EXE-00.toc
41927 INFO: Updating manifest in C:\Users\user\Desktop\PythonProjects38\build\TransmittalEXE\run.exe.d66z9a0v
42037 INFO: Updating resource type 24 name 1 language 0
42050 INFO: Appending archive to EXE C:\Users\user\Desktop\PythonProjects38\dist\TransmittalEXE.exe
Traceback (most recent call last):
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Users\user\Desktop\PythonProjects38\pyinstaller.exe\__main__.py", line 7, in <module>
  File "c:\users\user\desktop\pythonprojects38\venv\lib\site-packages\PyInstaller\__main__.py", line 114, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "c:\users\user\desktop\pythonprojects38\venv\lib\site-packages\PyInstaller\__main__.py", line 65, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "c:\users\user\desktop\pythonprojects38\venv\lib\site-packages\PyInstaller\building\build_main.py", line 720, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
  File "c:\users\user\desktop\pythonprojects38\venv\lib\site-packages\PyInstaller\building\build_main.py", line 667, in build
    exec(code, spec_namespace)
  File "C:\Users\user\Desktop\PythonProjects38\TransmittalEXE.spec", line 20, in <module>
    exe = EXE(pyz,
  File "c:\users\user\desktop\pythonprojects38\venv\lib\site-packages\PyInstaller\building\api.py", line 446, in __init__
    self.__postinit__()
  File "c:\users\user\desktop\pythonprojects38\venv\lib\site-packages\PyInstaller\building\datastruct.py", line 160, in __postinit__
    self.assemble()
  File "c:\users\user\desktop\pythonprojects38\venv\lib\site-packages\PyInstaller\building\api.py", line 622, in assemble
    with open(exe, 'rb') as infh:
OSError: [Errno 22] Invalid argument: 'C:\\Users\\user\\Desktop\\PythonProjects38\\build\\TransmittalEXE\\run.exe.d66z9a0v'

为了更多参考,我尝试卸载并重新安装 pyinstaller 和 pywin32 但无济于事。我的命令提示符条目是 pyinstaller --onefile TransmittalEXE.py.

还有其他人遇到过这个问题吗?我在这个论坛上看到过类似的问题,但不是这个确切的问题。

python windows pyinstaller
5个回答
12
投票

我遇到了同样的问题,我可以通过转到 Windows 防病毒保护选项并添加我的脚本所在的文件夹作为例外来修复它。

转到“开始”>“设置”>“更新和安全”>“Windows 安全”,然后选择“病毒和威胁防护”。 在“病毒和威胁防护设置”下,选择“管理设置”。 添加包含所需脚本的文件夹作为例外。


5
投票

我花了几个小时寻找解决方案,几乎尝试了互联网上所有可能的解决方案,而且,我终于通过安装较低版本(pyinstaller v5.6.2)而不是最新版本解决了问题这为我解决了这个问题!


1
投票


1
投票


0
投票

[Errno 22] Invalid argument: 'C:\...\file.exe.notanexecutable'

但只需删除后缀“.notanexecutable”即可解决问题。我能够成功运行可执行文件。

© www.soinside.com 2019 - 2024. All rights reserved.