Custom WinMessage

Hi. I’m making a game which requires two mice (just focusing on Windows
right now – I’ll worry about cross-platform later). I’ve been able to
tell Windows to give me WM_INPUT events through the SDL_SYSWMEVENT
mechanism.

But the problem is that SDL seems to clean up the events before I can
get at 'em, by calling DefWindowProc. So I rigged up a little function
to replace the message handler:

SDL_SysWMinfo info;
SDL_VERSION(&info.version);
SDL_GetWMInfo(&info);

sdl_message_handler = reinterpret_cast<message_handler_type>(
        SetClassLongPtr(info.window, GCLP_WNDPROC,
            reinterpret_cast<LONG_PTR>(&mouse_intercept)));

This calls mouse_intercept about 8 times right after I call
SDL_SetVideoMode again, and then never does again. I don’t know what’s
happening.

But my overall question is: is there a way to get WM_INPUT messages
before SDL gets them? I’m to the point where any hackish solution
should do…

Thanks,
Luke