Benjamin Rutt <[EMAIL PROTECTED]> writes:

> Any ideas what I might be doing wrong?  FYI, I am using a older
> version of Python (2.0) and win32all (I downloaded one that went with
> the 2.0 release...Add/Remove programs shows "Python 2.0 combined Win32
> extensions").  Also using Windows XP SP2.  Thanks,

I think I figured it out.  It must have been a problem with my using
an older version of Python.  When I installed version 2.4 of Python
and Win32all alongside version 2.0, everything started to work.  I
continue to piece together the following code which seems to work,
although I do not understand all of these flags:

-----------------------------------------------------------------------------
from win32gui import *
from win32con import *

gwl_style = GWL_STYLE

def windowEnumerationHandler(hwnd, resultList):
    '''Pass to win32gui.EnumWindows() to generate list of window handle, window\
 text tuples.'''
    if IsWindowVisible(hwnd):
        val = GetWindowLong(hwnd, gwl_style)
        if val & WS_VISIBLE:
            if not val & WS_CHILD:
                if not val & WS_EX_TOOLWINDOW:
                    if val & WS_EX_CONTROLPARENT:
                        val = GetWindowLong(hwnd, gwl_style)
                        txt = GetWindowText(hwnd)
                        resultList.append((hwnd, txt))

windows = []
EnumChildWindows(GetDesktopWindow(), windowEnumerationHandler, windows)
for w in windows:
    print "%10s %s" % (w[0], w[1])
-----------------------------------------------------------------------------

Does anyone happen to know why if the window handle is not an
WS_EX_TOOLWINDOW and is an WS_EX_CONTROLPARENT, then it is one of the
taskbar programs?  Thanks,
-- 
Benjamin Rutt

_______________________________________________
Python-win32 mailing list
Python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32

Reply via email to