This is the kind of thing I was getting at when I talked about reading the MSDN docs for new DWM/DirectX stuff in Vista and Win 7.
Traditionally (up until Vista) a program would have done what you describe by making a window that looks like a cursor. (Programs paint their own windows so if Mojo wants to make a window that looks like a cursor, that's not a problem.) The program would have set the window to be always on top and moved the window whenever the cursor moves.
There would have been two problems with this. (1) It's too slow for a cursor. (2) As the fake cursor moves it will leave visible artifacts behind itself that eventually get redrawn, but not immediately.
Starting in Vista, Microsoft rewrote the way windows get drawn. Depending on system settings and video hardware, everything on the desktop is now handled as double-buffered DirectX surfaces (the same way games draw themselves). Some of this new code gets used automatically (without an application necessarily knowing anything about it) and some of it is exposed to applications through new APIs that they have to call deliberately.
It's possible that some of this new stuff could make this practical, but I don't know because I haven't used it or read its documentation carefully.
The appearance of the cursor doesn't matter -- if this is doable, the drawing could be anything.
Connect With Us