pyinstaller打包exe后(带DLL打包)在其他机子上运行出现错误(Failed to execute script ***)

错误(一)

pyinstaller打包exe后(带DLL打包)在其他机子上运行出现错误(Failed to execute script ***)
查看错误信息我们可以看到应用程序指定路径下,找不到相应dll文件:
(因为打包时采用的是绝对路径,所有要将dll文件放在指定路径下)

pyinstaller打包exe后(带DLL打包)在其他机子上运行出现错误(Failed to execute script ***)

错误(二)

放置dll文件后还是运行失败。

是否是ddl还缺少其他依赖或动态库?
下面使用Dependency Walker 工具 来进行模块的依赖性检查:
pyinstaller打包exe后(带DLL打包)在其他机子上运行出现错误(Failed to execute script ***)
下图中MFC90.DLL和MSVCR90.DLL显示问号,提示找不到该依赖(注:下图是我安装完Visual C++ 2008运行库后的截图,已经解决了这个问题)
pyinstaller打包exe后(带DLL打包)在其他机子上运行出现错误(Failed to execute script ***)

网上查找可知:
缺少msvcr90.dll依赖,可以通过安装Visual C++ 2008运行库来获得此文件。

系统文件msvcr90.dll是存放在Windows系统文件夹中的动态链接库文件,通常情况下不是在安装操作系统过程中自动创建的,可以通过安装Visual C++ 2008运行库来获得此文件(文件还包括msvcr90d.dll、msvcp90.dll、mfc90.dll等)对于VIsual C++ 2008编写的.