模拟向特定窗口或控件发送键盘消息(F1)
2010-05-26 14:51
1576 查看
一、首先获得窗口或控件句柄:
FindWindow(NULL,"窗口标题");
FindWindowEx(h_Wnd,NULL,"控件或子窗口类名","控件或子窗口标题");
标题和类名一般查一个就行了,输入参数时一般填一个,另一个置为NULL,
关于控件或子窗口class名可通过SPY++查看。
二、发送消息
#define LPINF1 0x003B0001
#define LPINF2 0xC03B0001
PostMessage(hIEServer, WM_KEYDOWN, VK_F1, LPINF1);
PostMessage(hIEServer, WM_KEYUP, VK_F1, LPINF2);
其中hIEServer是接收消息的窗口句柄,WM_KEYDOWN是消息类型,VK_F1是F1键的虚拟值,
关于最后一个参数的值通过SPY++查看的,先打开SPY++监听窗口的消息,然后手动按F1后SPY++会显示监听的窗口所接收的到消息,
点击消息右键查看属性,在参数一栏有
wparam : 00000070
lparam : 003B0001
拷贝过来定义一下就行了,
postmessge前可能还要对窗口聚焦,模拟点击一下即可
FindWindow(NULL,"窗口标题");
FindWindowEx(h_Wnd,NULL,"控件或子窗口类名","控件或子窗口标题");
标题和类名一般查一个就行了,输入参数时一般填一个,另一个置为NULL,
关于控件或子窗口class名可通过SPY++查看。
二、发送消息
#define LPINF1 0x003B0001
#define LPINF2 0xC03B0001
PostMessage(hIEServer, WM_KEYDOWN, VK_F1, LPINF1);
PostMessage(hIEServer, WM_KEYUP, VK_F1, LPINF2);
其中hIEServer是接收消息的窗口句柄,WM_KEYDOWN是消息类型,VK_F1是F1键的虚拟值,
关于最后一个参数的值通过SPY++查看的,先打开SPY++监听窗口的消息,然后手动按F1后SPY++会显示监听的窗口所接收的到消息,
点击消息右键查看属性,在参数一栏有
wparam : 00000070
lparam : 003B0001
拷贝过来定义一下就行了,
postmessge前可能还要对窗口聚焦,模拟点击一下即可
相关文章推荐
- 向指定窗口发送模拟键盘按键消息
- 无法向某些窗口发送模拟键盘鼠标消息的问题
- Windows下向指定窗口模拟发送键盘消息
- 详解Windows消息分类以及WM_COMMAND与WM_NOTIFY的区别,以及模拟发送控件通知消息
- PostMessage对某一窗口控件进行消息发送
- 在C#程序中模拟发送键盘按键消息
- TrackMouseEvent函数在鼠标离开某一窗口或在某一窗口上停留超过某一特定时间长度时发送消息(转)
- 最好是在线程函数内发送消息给主窗口,主窗口响应消息控制进度条控件
- Java模拟发送键盘消息 shift组合键
- 使用Windows API函数向标准窗口控件发送消息
- MFC模态对话框和非模态对话框及副窗口调用主窗口控件 自定义消息发送
- mfc窗口位置设置,隐藏功能,给其他程序发送虚拟鼠标键盘消息
- 在C#程序中模拟发送键盘按键消息
- 如何通过想窗口控件发消息模拟点击按键
- 在C#程序中模拟发送键盘按键消息
- Windows消息(二):消息的分类以及模拟发送控件通知消息
- .主窗口向子控件发送消息
- QT获取控件焦点,判断对象类型,模拟发送按键消息
- 向其他软件窗口、控件发送消息的方法
- 详解Windows消息分类以及WM_COMMAND与WM_NOTIFY的区别,以及模拟发送控件通知消息