1. 问题描述:
1). 项目之前打包成exe在其他电脑上运行一直正常,突然就报错了。
2). 错误信息:
Error loading Python DLL 'C:\Users\ADMINI~1\AppData\Local\Temp\_MEI77562\python37.dll'.
No error message generated.
FormatMessageW: 参数错误
LoadLibrary: PyInstaller: FormatMessageW failed.

2. 项目描述:
1). 一个PyQt5的项目包含多个文件夹多个文件
2). 使用 Pyinstaller打包,打包命令为 pyinstaller --onefile main.py 生成唯一一个exe文件
3). 软件打包的电脑是window10系统,运行报错的电脑是window7系统,在其他window10系统的电脑上可以正常运行
4). 运行方式是将exe文件拷贝到U盘,在其他电脑插上U盘双击exe文件运行
3. 尝试的几种处理方式,最后一次解决问题
1). 使用 pyinstaller --clean --noupx --onefile main.py 打包
不行,问题依旧
2). 使用 pyinstaller --clean --win-private-assemblies --onefile main.py 打包
不行,问题依旧
3). 使用 pyinstaller -F main.py 打包
不行,问题依旧
4). 使用 pyinstaller -D main.py 打包
不行,问题依旧
5). 将项目使用的python3.7.1版本更换为python3.6.0版本后,
使用 pyinstaller --onefile main.py 打包
不行,问题依旧,只是提示的变成了
Error loading Python DLL 'C:\Users\ADMINI~1\AppData\Local\Temp\_MEI77562\python36.dll'.
No error message generated.
FormatMessageW: 参数错误
LoadLibrary: PyInstaller: FormatMessageW failed.
使用 pyinstaller -D main.py 打包
不行,问题依旧
6). 后来仔细梳理了在可用和不可用的时间节点前后,对比所有操作的不同之处,发现所有不可用的情况我都是在另一台电脑上进行的打包操作,所以我把代码拷贝到之前的电脑上进行打包,问题解决。
打包不可用电脑的系统:window10 家庭版
打包可用电脑的系统:window10 专业版