调用程序,并模拟键盘在别人的程序窗口中输入参数的有关问题。代码给出,求有关问题解答
调用程序,并模拟键盘在别人的程序窗口中输入参数的问题。代码给出,求问题解答。
WinExec( "test.exe ", SW_SHOW);
for(int i=0;i <=34;i++)
{
BYTE keyTemp = key1[i];
::keybd_event(keyTemp, 0, 0, 0); // 按下
::keybd_event(keyTemp, 0, KEYEVENTF_KEYUP, 0); // 弹起
i++;
}
调用程序后,要求模拟键盘输入到被调用的窗口中,确在编译器内输出。是不是需要得到一个参数呢。
希望能帮助解决。。
------解决方案--------------------
记住keybd_event 只是模拟, 你系统的焦点在哪里,系统就会给那里送这个消息。
------解决方案--------------------
可以用FindWindow找到窗口,获得句柄,再根据窗口句柄获取你要定位的控件位置,是用SetCursorPos定位鼠标点,在使用模拟键盘输入
坐标不对的话,试试看ClientToScreen or ScreenToClient
WinExec( "test.exe ", SW_SHOW);
for(int i=0;i <=34;i++)
{
BYTE keyTemp = key1[i];
::keybd_event(keyTemp, 0, 0, 0); // 按下
::keybd_event(keyTemp, 0, KEYEVENTF_KEYUP, 0); // 弹起
i++;
}
调用程序后,要求模拟键盘输入到被调用的窗口中,确在编译器内输出。是不是需要得到一个参数呢。
希望能帮助解决。。
------解决方案--------------------
记住keybd_event 只是模拟, 你系统的焦点在哪里,系统就会给那里送这个消息。
------解决方案--------------------
可以用FindWindow找到窗口,获得句柄,再根据窗口句柄获取你要定位的控件位置,是用SetCursorPos定位鼠标点,在使用模拟键盘输入
坐标不对的话,试试看ClientToScreen or ScreenToClient