首页
社区
课程
招聘
[求助]怎么判断当前程序是可以输入的状态?
发表于: 2012-3-30 20:11 4541

[求助]怎么判断当前程序是可以输入的状态?

2012-3-30 20:11
4541
就是判断目前是否是可以打字的状态。
我程序是 如果当前是可以输入的状态,就想输入法那样弹一个小图标,求思路啊

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 615
活跃值: (172)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
2
WM_CHAR消息应该可以判断,你过滤系统所有窗口消息,遇
到WM_CHAR你就可以通过MSG结构体知道是哪个窗口句柄、光标位置、输入的键盘码等信息~
2012-3-30 20:33
0
雪    币: 615
活跃值: (172)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
3
BOOL GetMessage(
  LPMSG lpMsg,         // message information
  HWND hWnd,           // handle to window
  UINT wMsgFilterMin,  // first message
  UINT wMsgFilterMax   // last message
);
2012-3-30 20:34
0
雪    币: 506
活跃值: (70)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
输入法注入到每个进程,
应该是得到通知的。
而不是输入法程序本身自己动获得状态,,猜的。
2012-3-30 21:39
0
雪    币: 615
活跃值: (172)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
5
哥的方法是最好的,自己动手实验下吧!
2012-3-31 12:02
0
雪    币: 209
活跃值: (143)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
WaitForInputIdle
2012-3-31 21:54
0
雪    币: 3
活跃值: (178)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
我比较赞同输入法方面,是因为,qq 这sb不知道搞什么 普通方法找不到caret。但输入能找到。
2012-4-1 10:28
0
雪    币: 3
活跃值: (178)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
而且关键 有输入焦点 不一定就可以输入字符。比较button什么的 都可以有输入焦点。所以我找到caret进行判断。getguithreadinfo用过了,但qq还有些 自己实现的程序抓不到。
2012-4-1 10:33
0
雪    币: 31
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
9
如果是Edit类控件,好像得到输入焦点时系统会向控件的窗口过程发送一个消息。你查下msdn吧。
2012-4-1 11:18
0
游客
登录 | 注册 方可回帖
返回
//