pyqt界面用pyinstaller打包后执行异常

这几天写了个小程序,用pyqt5封装成界面作为程序的入口,输入多种参数,传入程序内执行,执行者既摆脱了环境配置的限制,又提高了交互的友好性,过程中遇到一个棘手问题,执行运行pyqt的python文件生成界面运行,没有问题,使用pyinstaller打包后遇到通过usb调用外设就会抛出异常“No backend available”,最后发现是打包的时候pyinstall没有把usb通信相关的dll文件打包进来 C:\\Windows\\System32\\libusb0.dll,

如下图:

使用pyinstaller -F xxxx.py   可以在执行的路径下发现一个xxx.spec的文件,打开该文件添加一下红框中部分,重新使用spec打包

binaries = [

('C:\\Windows\\System32\\libusb0.dll','.'),

]

修改后保存,然后删除,第一次打包生成的dist和build 两个文件夹,

pyinstaller -F xxx.spec  生成的exe就解决了 “No backend available”的问题,希望对你有用

你可能感兴趣的:(pyqt界面用pyinstaller打包后执行异常)