Accessing Win32 class names
Thomas Heller
theller at python.net
Fri Jan 31 03:37:27 EST 2003
Tom Harris <TomH at optiscan.com> writes:
> Greetings
>
> Anyone know how to get the Windows class name knowing the handle in Python?
> For some reason win32gui does not appear to wrap the API call GetClassName()
It's simple with ctypes:
Python 2.2.2 (#37, Oct 14 2002, 17:02:34) [MSC 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from ctypes import windll, c_string
>>> user32 = windll.user32
>>> hwnd = user32.GetDesktopWindow()
>>> buf = c_string("\000" * 32)
>>> user32.GetClassName(hwnd, buf, len(buf))
Traceback (most recent call last):
File "<stdin>", line 1, in ?
....
ValueError: function 'GetClassName' not found
>>> user32.GetClassNameA(hwnd, buf, len(buf))
6
>>> print buf.value
#32769
See http://starship.python.net/crew/theller/ctypes.html
Thomas
More information about the Python-list
mailing list