(人工操作的那台机子我称之为“服务器”,等待消息自动翻页的机器我称之为“客户机”)
前景知识:
1、调用API keybd_event()可以模拟一个键盘动作;
调用API mouse_event()可以模拟一个鼠标动作;
以上两个API的不足就是无法指定向特定窗口发送键盘/鼠标消息。
2、利用API函数 SendMessage()可以以同步的方式向目标窗体发送一条消息,然后,
等待目标窗体的处理过程处理此消息;
利用API函数 PostMessage()可以以异步的方式向目标窗体发送一条消息,然后,
函数立即返回。
函数原型声明:
LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
BOOL PostMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
(我感觉在客户机上应该使用PostMessage来向PwoerPoint窗口发送按键消息,这样进程就不会阻塞,可以继续监听发送过来的消息)
3、我们所要做的事情可以分为:
服务器:
• 记录翻页按键(上下箭头/PageUP/PageDown,还可以包括鼠标滚轮的上下方向)
我们可以简单化:只要是翻下页我们就发送 1;否则发送0;
服务器和客户端:
• 建立一个基于socket的连接,服务器到客户机,这一步很容易实现,然后,在客户机的程序中判断