I'm trying to do this with no luck so far.
I'm listening for the WM_SETCURSOR messages and setting the cursor there, it works most times, but not always. I've seen two other cases that I need to catch:
- WM_PAINT: At least after a WM_LBUTTONDOWN the cursor is painted somehow without calling WM_SETCURSOR...
- WM_CAPTURECHANGED: Happening sometimes when the mouse is down and moving it.
Even doing all this the cursor sometimes flickers and the original one can be seen in some cases (eg: the instant when you roll over some object that sets the cursor to something else). I've been trying to look for some other patterns or messages but didn't see anything that would solve this problem. Has anyone succeeded in doing this?