Python 2.5和2.7能与wxPython、py2exe和comtypes共存吗(解决MSVCP90.dll问题)?
我在写一个使用wxPython和comtypes的代码。我在我的电脑上安装了Python 2.7(Windows系统),同时也安装了wxPython、comtypes和py2exe。在构建的时候遇到了一个错误:
错误:MSVCP90.dll:没有这样的文件或目录
于是我查了一下,发现有两个解决方案:
1. 把Microsoft.VC90.CRT.manifest和msvcp90.dll复制到你的电脑上,然后按照下面的方式准备你的设置:
from distutils.core import setup
import py2exe
from glob import glob
data_files=[("Microsoft.VC90.CRT", glob(r'c:\shared_dlls*.*'))]
setup(data_files=data_files, console=['main.pyw'])
2. 使用Python 2.5,配合wxPython、comtypes和py2exe
现在,我有以下问题:
关于第一种情况:
a. 我需要有Visual Studio的许可证才能使用这些文件吗?还是说可以随便用?
b. 如果我用上面的方法编译了,用户的电脑上还需要MSVC90.dll才能运行吗?我觉得不需要。如果我错了,请纠正我。我想去掉任何依赖,给用户一个可以直接运行的exe文件,不需要其他东西。
关于第二种情况:
我在电脑上已经安装了Python 2.7和上面提到的模块。我想知道能不能在同一台电脑上安装Python 2.5?它们能共存吗?如果可以,我还需要为这个再安装一份wxPython、comtypes和py2exe吗?
请告诉我最好的解决方案。我该怎么做?这让我有点卡住了。
谢谢!
3 个回答
- 你有没有试着安装一下 Visual C++ 运行库?我觉得你不需要有 Visual Studio 的许可证就可以安装这个。
我简单地从这里下载了 MSVCP90.dll 文件:http://www.dllme.com/dll/files/msvcp90_dll.html,然后把它粘贴到 Python27\DLLs 文件夹里。这样就能用了。
Python 2.5和2.7(还有其他所有版本的Python)可以很好地共存。你可能需要调整一下你的路径,以便使用正确的Python版本。
你需要安装Python 2.5版本的wxPython和py2exe。此外,还需要为Python 2.5安装comtypes。这个安装程序会通过检查注册表来识别你电脑上安装的Python版本。