I made a quick app to test out this but it seemed to be too slow.
Basically my method was this
Code:
for(;;Sleep(5))
{
if(GetAsyncKeyState(VkKeyScan('9')))
{
Memory.WriteFloat(WoWInfo.hProcess, (LPVOID)(localObj.dwBaseAddress + OBJ_OFFSET_ZPOS), (localObj.GetZPos() + 0.1));
SendMessage(WoWInfo.hWnd, WM_KEYDOWN, VK_LEFT, 0);
SendMessage(WoWInfo.hWnd, WM_KEYUP, VK_LEFT, 0);
}
}
Anyways, in that loop it appeared to be too slow, perhaps because of the Sleep() and the epicly tiny increment of 0.1 :P
And sometimes the WM_KEYDOWN/WM_KEYUP wouldn't be in time with WoW so would still result in a d/c, (or perhaps as Kynox said was probably some anti-floodig method put in place by WoW).
I gave up on that now anyways, was funny "floating" in front of people for while.