用py2exe对python2.6程序封装后,在某些机器上无法运行
参考了py2exe官网:
http://www.py2exe.org/index.cgi/Tutorial#Step52
找出了解决办法:
在发布的程序目录下建立一个文件名为:
Microsoft.VC90.CRT.manifest
内容如下:
再将dll文件:msvcr90.dll复制到程序同目录下,注意msvcr90.dll的版本号为
添加了这两个文件后问题就解决了。
说明:
另外,也可以通过安装vs2008可再发行包来解决运行环境的依赖问题:
http://download.microsoft.com/download/7/5/0/7502f4e9-1f90-4895-9259-1bde67b8b9a1/vcredist_x86.exe
安装完以后可以在所在操作系统的 C:/windows/WinSxS/x86_Microsoft.VC90.CRT_**_9.0.21022.8_x-**(**为任意其它字符) 中找到需要的dll文件,
另外可以在C:/windows/WinSxS/Manifests 中找到:x86_Microsoft.VC90.CRT_**_9.0.21022.8_**.manifest
对上面的manifest文件进行修改去掉对msvcm90.dll和msvcp90.dll文件的依赖即可,因为py2exe上面说我们不需要这两个文件。