Py2exe编译Pywinauto程序

话说Pywinauto真是好用阿,不过有些脚本想给同事用他们要安装Python就有点麻烦了,用Py2exe编译出的程序运行时总提示有错误。今天花了点时间,原来Py2exe的脚本里有很多选项可以用。先写这一点吧。

  1. from distutils.core import setup
  2. import py2exe
  3.  
  4. setup(console=[‘setup_vista32.py’],
  5. options={
  6.                  "py2exe":{
  7.                  "packages":
  8.                                   ["pywinauto",
  9.                                   "pywinauto.findwindows",
  10.                                   "pywinauto.controls",
  11.                                   "pywinauto.tests"]
  12.                                   }
  13.                 }

以后再慢慢优化把垃圾去出去。

Related posts:

  1. 在Google App Engine SDK里运行web2py
  2. 打开web2py的远程访问
  3. 给Squid添加密码验证
  4. Arch Linux的X11启动方案选择
  5. 终于知道怎么调用Gstreamer放电影了

5 Responses to “Py2exe编译Pywinauto程序”

  1. delphi1000 writes:

    在win下面用好像还可以…..不过我觉得奇怪啊….为啥在google搜索pywinauto你能排在第一页…太强了…看来有关这个的资料还是很少啊

    Reply/回复

  2. bones7456 writes:

    我也折腾过 py2exe 还是蛮好用的:
    http://li2z.cn/2009/06/20/py2exe/

    Reply/回复

    linuxcity Reply:

    原来是大名鼎鼎的懒骨头兄。。。

    Reply/回复

  3. pywinauto的问题,怎么知道每个对象都有哪些方法? writes:

    您好,看到你的blog上不少pywinauto的文章,您应该经验比较丰富了,所以来请教你个问题。
    公司刚开始有个windows下的应用程序,正打算用pywinauto实现自动化测试,但遇到个比较大的问题是,怎么知道一个对象的有哪些方法呢?比如下面的代码:

    >>> from pywinauto import application
    >>> app = application.Application.start(“notepad.exe”)
    >>> app.Notepad.MenuSelect(“File->SaveAs”)
    >>> dir(app.Notepad)
    ['Exists', 'PrintControlIdentifiers', 'Wait', 'WaitNot', 'Window_', 'WrapperObject', '__call__', '__class__', '__delattr__', '__dict__', '__doc__', '__getattr__', '__getattribute__', '__getitem__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__str__', '__weakref__', '_ctrl_identifiers', 'app', 'criteria', 'ctrl_', 'print_control_identifiers', 'window_']
    >>> app.SaveAs.ComboBox5.Select(“UTF-8″)

    我怎么知道app.Notepad对象里有MenuSelect()的方法呢,还有参数是什么?同样道理对于app.SaveAs.ComboBox5.Select(“UTF-8″), 我从哪里知道有 app下有SaveAS的方法,下面有ComboBox5。

    多谢!

    Reply/回复

    linuxcity Reply:

    我已经不用Pywinauto很久了,改用AutoIT了,Pywinauto太久没有更新(上次的更新是07年的事了),很多许诺的功能都没有实现而且对开发者不够友好。
    你说的应该可以用app.Notepad.PrintControlIdentifiers()来查询。

    我觉得Pywinauto除非你想自己添加一些新库,否则的话还是换吧。AutoIT其实很强大的,社区也很活跃。一些Testing Framework像是Robot Framework都有专门支持他的插件。安装时一定要把下边那个增强的SciTE编辑器也按上,有很多调试工具。

    Reply/回复

Leave a Reply