Hooking windowsmessages with python

Aaron Brady castironpi at gmail.com
Thu Nov 20 07:38:00 EST 2008


On Nov 20, 3:52 am, Kevin Osthoff <icepic1... at gmx.de> wrote:
> Hi!
>
> I'm trying to set a message hook with python to catch WM_DROPFILES.
> The guiframework is Tkinter.
> Here a code snippet:
>
> > hwnd = eval(self.wm_frame())
> > win32gui.DragAcceptFiles(hwnd,1)
> > wnd = win32ui.CreateWindowFromHandle(hwnd)
> > wnd.HookMessage(self.test,w32con.WM_DROPFILES)
> > def test(self):
> >    print "blala"
>
> The DragAcceptFiles-Call seems to be alright. When i drag a file over
> the gui there is this drag-and-drop icon. But the problem is, that the
> callback-function (test) is never executed.
> I also try different messages like Mousemove or Buttondown. So i think
> there is a problem with the HookMessage function.
> I read that you must compile Python with PYWIN_WITH_WINDOWPROC option
> enabled. Is this the problem?
>
> Can someone give me a short working code to hook a message so i can try
> it on my workstation?
>
> Thx in advance!

I've done some hooks in C.  If no one has a simpler way, I can help
you build a DLL to do it, and call it from Python.



More information about the Python-list mailing list