p2exe打包GUI程序前后效果差别很大,这是为什么?

p2exe打包GUI程序前后效果差别很大,这是为什么?

我用wxpython写的GUI程序,最简单的一个frame上放个按钮
在python环境下运行很漂亮,但是经过py2exe打包后
显示的界面效果很差,
按钮原来是3D的,打包后成平平的显示了
另外边框原来很平滑的,现在也深深陷了下去,
有人知道这是为什么吗??有什么方法可以解决??
setup是最简单的写法
from distutils.core import setup
import py2exe
setup = (windows=['frame.py'])
还真没用过p2exe打WxPython的程序。打包完了一定体积不小吧呵呵。
我用p2exe封装Twists界面的程序,界面保持原样。不过打完包程序至少得9M
我用的是python 2。4
windows 版本的,请问怎么封装一个.py 程序成windows 的 exe 程序啊!我安装了py2exe  写了setup.py 运行后老说setup   SyntaxError: invalid syntax 这是怎么回事啊,我确定setup 是从文档中粘的



QUOTE:
原帖由 西门子 于 2006-7-27 22:05 发表
我用的是python 2。4
windows 版本的,请问怎么封装一个.py 程序成windows 的 exe 程序啊!我安装了py2exe  写了setup.py 运行后老说setup   SyntaxError: invalid syntax 这是怎么回事啊,我确定setup 是从文档 ...

粘贴才容易出问题呢!仔细检查一下代码吧

btw,下次有新问题开新帖子问


QUOTE:
原帖由 birdflyoop 于 2006-7-10 19:34 发表
我用wxpython写的GUI程序,最简单的一个frame上放个按钮
在python环境下运行很漂亮,但是经过py2exe打包后
显示的界面效果很差,
按钮原来是3D的,打包后成平平的显示了
另外边框原来很平滑的,现在也深深陷了 ...

看看py2exe里的这个例子(运行的话需要安装有InnoSetup)
site-packages/py2exe/samples/extending/setup.py

QUOTE:
要创建声明并使您的应用程序能够使用XP外观风格,请执行以下步骤:

    将名为 YourApp.exe.manifest 的文件添加到具有以下 XML 格式的源代码树中:

      <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

      <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">

      <assemblyIdentity

          version="1.0.0.0"

          processorArchitecture="X86"

          name="CompanyName.ProductName.YourApp"

          type="win32"

      />

      <description>此处是您的应用程序说明。</description>

      <dependency>

          <dependentAssembly>

              <assemblyIdentity

                  type="win32"

                  name="Microsoft.Windows.Common-Controls"

                  version="6.0.0.0"

                  processorArchitecture="X86"

                  publicKeyToken="6595b64144ccf1df"

                  language="*"

              />

          </dependentAssembly>

      </dependency>

      </assembly>

只使用lz的setup.py
window shell提示符> setup.py py2exe -b1  就可以生成frame.exe文件和zip压缩库
没有遇到lz所说界面变化问题

如果在setup.py 中加上zipfile=None, 即
from distutils.core import setup
import py2exe
setup = (zipfile=None, windows=['frame.py'])

可以只生成 frame.exe文件 (w9xpopen.exe和 MSVCR**.dll 可以不需要)