cxfreeze打包工程文件生成.exe,运行exe出现闪退问题,相关解决办法总结

cxfreeze打包工程文件生成.exe,包含numpy,matplotlib, mutiprocess等工具包,运行exe出现闪退问题
使用cxfreeze打包,注意cxfreeze的版本要和python的完全一致,生成的.exe如果有闪退问题,可创建一个如下的.py文件,用cmd、dos运行,查看闪退原因
import os
result=os.popen(r"C:\Users\Thinkpad\Desktop\NTS\nts_ui.exe")
print(result.read()) 

工程包括numpy,matplotlib时,mkl相关.dll文件须要手动添加,文件位置为;lib\site-packages\numpy\core

一般发生在无缩进的创建process的代码中,没有主函数的保护,打包process会有问题,出现runtime error
解决:
如果是在主函数文件中创建process
from mutiprocess import  freeze _ support
if __name__ == __main__:
      freeze_support()#必须加上
    创建process
如果是主函数子进程子模块文件中创建
把创建process的代码封装在函数里,供主函数调用,即
def  函数名 :
       创建process

你可能感兴趣的:(python)