Pyinstaller生成EXE无法正常执行
程序员文章站
2022-05-10 23:33:07
...
文章目录
[问题描述]
1. 通过pyinstaller生成EXE,将其拷贝到远程服务器执行C链接库错误
缺少链接库 api-ms-win-crt-math-l1-1-0.dll
2. 通过pyinstaller生成EXE,程序执行会出现无法找到模块
ModueNotFoundError: No module named 'requests'
3. Configparser库读取ini配置出现字符识别异常情况
※ 此问题严格来说不属于pyinstaller产生的问题,而是字符问题
[问题解决]
1. C链接库缺失问题,通过部署Visual C++ libraries and the Universal CRT解决
https://www.microsoft.com/zh-CN/download/confirmation.aspx?id=48234
2. 程序执行会出现无法找到模块通过更新库解决
pip install requests --upgrade
3. Windows Notepad存储为UTF-8时,自动在文件头增加"\xfe\xff"隐藏字符引起
- 不要运用Winodws自带的notepad编辑,而是通过其他工具编辑并保存为[UTF-8 无BOM] 格式。
- 如果无法控制ini编辑工具问题,那么就在程序里解决。
- 方法一:将UTF-8 变更为UTF-8-SIG
conf = configparser.ConfigParser()
conf.read('config.ini', "utf-8-sig")
- 方法二:将配置文件进行全局关键字过滤
content = open('config.ini').read()
#Window下用记事本打开配置文件并修改保存后,编码为UNICODE或UTF-8的文件的文件头
#会被相应的加上\xff\xfe(\xff\xfe)或\xef\xbb\xbf,然后再传递给ConfigParser解析的时候会出错
#,因此解析之前,先替换掉
content = re.sub(r"\xfe\xff","", content)
content = re.sub(r"\xff\xfe","", content)
content = re.sub(r"\xef\xbb\xbf","", content)
open('config.ini', 'w').write(content)
上一篇: Script Runner之Behavior功能应用实例
下一篇: PHP模拟发送POST请求之四、加强file_get_contents()发送POST请求,filepostcontents_PHP教程
推荐阅读
-
在WINDOWS上将Python 文件转为(生成)可执行程序 exe 文件
-
web前端页面生成exe可执行文件的方法
-
Pyinstaller打包.py生成.exe的方法和报错总结
-
Python—脚本程序生成exe可执行程序(pyinstaller)
-
python代码直接生成可执行exe文件
-
python生成可执行exe控制Microsip自动填写号码并拨打功能
-
Android 生成二维码踩坑之二维码无法正常识别扫码
-
用PyInstaller把Python代码打包成单个独立的exe可执行文件
-
Pyinstaller打包pyecharts和pyqt程序 生成exe错误解决
-
pyinstaller打包单个exe后无法执行错误的解决方法