python用pyinstaller打包避雷
这两天用pyinstaller打包的时候报错了"win32ctypes.pywin32.pywintypes.error: (225, 'BeginUpdateResourceW', '无法成功完成操作,因为文件包含病毒或潜在的垃圾软件 。')"并且windows安全中心直接给我把打包后的文件删除了
研究发现可能是因为我没有写GUI界面,并且用了-w参数屏蔽命令行窗口,识别为了垃圾软件,只能说很牛掰
我用的很简单的命令,以及很简单的代码内容测试,仍然会报毒{:1_908:}
pyinstaller -F -w test.py
text.py
print("哈哈哈") windows安全中心关了 如果python编写程序时调用第三方库 是不是要连带着库一起打包呢 Aminx520 发表于 2024-5-17 15:33
如果python编写程序时调用第三方库 是不是要连带着库一起打包呢
是的,所以打包后的程序可能会比较大 开个env环境试一下~~ pyinstaller 打包出来exe, win自带的杀毒就报毒
可以试试换成 nuitka 打包, 刚好这2天研究了一下
启动速度和打包大小比 pyinstaller 好一点, 不过没测试过会不会被WD干掉
好像就配置一个mingw64就能用了
```bat
@echo off
REM 设置入口文件名和图标文件名
set ENTRY_FILE=src\MainWindow.py
set ICON_FILE=src\res\icon_512.ico
set ADD_DATA=src\res=res
set APP_NAME=XXX
set COMPANY_NAME=XXX
REM 设置版本号
(git describe --tags --abbrev=0) > temp
set /p FULL_FILE_VERSION=<temp
set FILE_VERSION=%FULL_FILE_VERSION:~1%
del temp
REM 打包文件名
set DIST_FILE_NAME=%APP_NAME%-%FULL_FILE_VERSION%.exe
REM 清理之前的构建结果
rmdir /s /q dist
del /f /q %DIST_FILE_NAME%.exe
REM 激活虚拟环境
call venv\Scripts\activate.bat
REM 执行Nuitka命令
python -m nuitka --standalone --mingw64 --onefile ^
--remove-output ^
--disable-console ^
--plugin-enable=pyqt6 ^
--windows-icon-from-ico=%ICON_FILE% ^
--include-data-dir=%ADD_DATA% ^
--company-name=%COMPANY_NAME% ^
--product-name=%APP_NAME% ^
--file-version=%FILE_VERSION% ^
--product-version=%FILE_VERSION% ^
--output-dir=dist ^
--output-filename=%DIST_FILE_NAME%.exe ^
%ENTRY_FILE%
REM --windows-uac-admin
REM 移动可执行文件到根目录
move dist\%DIST_FILE_NAME%.exe .
REM 删除其他缓存文件夹
rmdir /s /q dist
echo Build completed...
@REM pause
``` CIBao 发表于 2024-5-17 18:16
pyinstaller 打包出来exe, win自带的杀毒就报毒
可以试试换成 nuitka 打包, 刚好这2天研究了一下
启 ...
激活虚拟环境
call venv\Scripts\activate.bat
这个方式好 高版本的pyinstaller会报毒, 想要免杀可以降级到低版本,例如5.8版本, 推荐直接安装autopytoexe,pip install auto-py-to-exe, 带网页界面直接打包, autopyexe底层是低版本pyinstaller 学习, 感谢经验分享 感谢分享{:1_893:}
页:
[1]
2