我正在尝试为我的python应用程序创建一个安装程序,它使用PyQt4。我希望捆绑python安装,因此,我必须使用python3.5,因为pynsist只支持python3.5捆绑。我使用了一个新的WinPython 3.5.1.1安装,在这里我安装了所有必要的软件包,并在一个新安装的Windows 10虚拟盒中测试安装程序。为了构建安装程序,我在我的Windows7机器上使用了WinPython 3.5.1.1环境。
但是,当我启动已安装的应用程序时,当导入QtGui或QtCore时会出现一个错误:
ImportError: DLL load failed: The specified module could not be found.我在internet中发现的这个错误的大多数问题都是由于python找不到dll造成的,但是pkgs\PyQt4 4文件夹中存在QtGui4.dll文件,并且还将它复制到应用程序的主文件夹,或者python文件夹不会改变任何东西。
我还尝试用捆绑和python3.5.1作为最小示例,在pynsist存储库中导出示例PyQt4应用程序,但我得到了相同的错误。
在Windows 10环境中,在QtCore.pyd产量上使用依赖步行器:

还有更多的“API*..DLL”依赖项缺失,我只是滚动到它被缝成最“有趣”的部分。
发布于 2016-01-13 15:26:18
缺少的dll文件是msvcp140.dll。
通过将该文件放入pynsist_pkgs文件旁边的.cfg目录中,可以将该文件包含在安装中。
要在运行时加载它,必须将pkgs添加到path中。这可以使用包含以下内容的extra_preamble文件来完成:
os.environ['PATH'] = pkgdir + os.pathsep + os.environ.get('PATH', '')https://stackoverflow.com/questions/34727256
复制相似问题