2012-02-16 92 views
0

我在Windows XP上使用py2exe生成了一个.exe文件。分发时,此可执行文件在Windows XP和Windows 7上平稳运行。在Parallels Desktop上运行通过py2exe生成的.exe

但是,在通过Mac的Parallel Desktop模拟的Windows XP上启动时,出现错误,指出“应用程序由于配置不正确而无法启动”。并建议我重新安装它。如果在启用控制台的情况下构建,则系统不会生成任何错误消息,并且控制台窗口会在消失之前短暂闪烁。该应用程序不会启动。

分发时,我从包含msvcp90.dll的目录启动.exe。我相信其他一切都被捆绑到了.exe中。我已经包含了我的setup.py文件以供参考。

有没有人设法通过Windows系统上的py2exe生成一个.exe,然后在并行桌面上运行?

setup.py:

from distutils.core import setup 
import py2exe, sys, os 

sys.argv.append('py2exe') 

setup(
    options = {'py2exe': {'bundle_files': 1}}, 
    windows = [{'script': "frontend.py"}], 
    zipfile = None 
) 
+0

我通过在Windows 7机器上而不是Windows XP机器上编译应用程序(相同的源代码和setup.py)解决了这个问题。我不确定为什么这样解决了这个问题,但是随着XP编译出现的任何依赖问题都会随着7编译而消失。 – user1214595 2012-02-23 20:24:40

回答

1

这可能是因为这是由于没有被安装在平行桌面XP的微软的Visual C++运行时的DLL。我想你可能需要安装Microsoft Visual C++ 2008 SP1 Redistributables;你可以从这里得到它们:http://www.microsoft.com/download/en/details.aspx?id=5582。 请注意,您可能需要安装非SP1可再发行组件或安装VC8/Visual C++ 2005 - 我不确定究竟需要什么,也可能取决于Python版本。

通常,这不是Parallel Desktop的问题,它只是一个需要符合的依赖关系,如果您使用的是安装程序,则会自动安装可再分发组件。一旦你在电脑上安装了它们,它就应该可以正常工作。

+0

感谢您的提示。这似乎是一个有前途的解决方案但是,我尝试安装两个建议的DLL集,问题依然存在。另外,我发现了将在并行系统上启动的旧版软件。该版本在Windows 7机器上编译,其安装和源文件与上述文件相同。怪异。真的很可怕。 – user1214595 2012-02-23 17:12:06

相关问题