请问如何模拟鼠标拖动

请教怎么模拟鼠标拖动
具体描述如下:
我能获得一个模拟器的hwnd,这个模拟器上有一个摇杆,现在我要通过这个hwnd来在该模拟器上拖动鼠标实现左右拖动摇杆的效果

我本来的预想是如下:
PostMessage(hWnd, WM_LBUTTONDOWN, MK_LBUTTON, MAKELPARAM(fPosX1,fPosY1)); // 先按下
PostMessage(hWnd, WM_MOUSEMOVE, MK_LBUTTON, MAKELPARAM(fPosX2,fPosY2));  // 然后移动
PostMessage(hWnd, WM_LBUTTONUP, MK_LBUTTON, MAKELPARAM(fPosX2,fPosY2)); // 最后弹起
没有任何作用,当然这个hwnd是有效的,按下弹起消息能响应

======================================================
【备注】:
        后台操作,不使用“mouse_event + SetCursorPos”
======================================================

------解决方案--------------------
我都没做界面直接在控制台应用程序里面都可以用这些啊~
之前做的自动把鼠标移动到开始菜单上点关机按钮。。请问如何模拟鼠标拖动
------解决方案--------------------
http://www.autohotkey.com
------解决方案--------------------
SetCursorPos(xx,yy);
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
SetCursorPos(xx+a,yy+b);
mouse_event(MOUSEEVENTF_ABSOLUTE
------解决方案--------------------
MOUSEEVENTF_MOVE,point.x*65535/GetSystemMetrics(SM_CXSCREEN),point.y*65535/GetSystemMetrics(SM_CYSCREEN),0,0);
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0

参考