请问postmessage(sendmessage)向其它窗口发送CTRL+A等组合按键的方法!

在多个地方,搜索引擎进行过搜索!但好象目前没有任何答案,希望各位老师能在这里帮帮我到底要怎么做?!这个问题好象一直以来就有,但一直无解!!(只要postmessage或者... 在多个地方,搜索引擎进行过搜索!但好象目前没有任何答案,希望各位老师能在这里帮帮我到底要怎么做?!这个问题好象一直以来就有,但一直无解!!(只要postmessage或者sendmessage的解)。如果真的不可以的话,我也就死心了!

谢谢各位!

PostMessage(thehwnd,WM_KEYDOWN,VK_CONTROL,0x001D0001);
PostMessage(thehwnd,WM_KEYDOWN,'A',0x001E0001);
PostMessage(thehwnd,WM_KEYUP,'A',0xC01E0001);
PostMessage(thehwnd,WM_KEYUP,VK_CONTROL,0xC01D0001);

SendMessage(WM_KEYDOWN, (WPARAM)17, (LPARAM)0x001d0001); // 按下Ctrl
SendMessage(WM_KEYDOWN, (WPARAM)38, (LPARAM)0x01480001); // 按下上键
SendMessage(WM_KEYUP, (WPARAM)38, (LPARAM)0xc1480001); // 放开上键
SendMessage(WM_KEYUP, (WPARAM)17, (LPARAM)0xc01d0001);
这些都不起作用!
谢谢楼上朋友的热心回答。
但我要的是复合键,如:ctrl+a.ctrl+f等,不是单一按键。
请继续指教,谢谢!!
展开
 我来答
lyglay
2008-02-01 · TA获得超过1137个赞
知道大有可为答主
回答量:975
采纳率:0%
帮助的人:0
展开全部
===============
不好意思,我晚上抽空试了一下,似乎真的不太容易实现,搜索网上好像也没有什么可用的信息
我的感觉是是否不能把多个按键的消息分开来发送?
就像吃饭可以撑死人,如果我一次性给一个人一吨食物吃,就可以至他于死地,但是如果我每天都请他吃饭,可能他活的更痛快了,哈哈
乱打比方
我的意思是,也许接受消息的对象不能把一连串消息当成一个消息来处理,形成不了组合键,所以达不到效果
你可以尝试这样(我没试)
先发个wm_setfocus消息让对象获得焦点,然后改用keybd_event来发送按键

=================
Private Const WM_SETFOCUS = &H7

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
yoya0303
2008-01-27 · TA获得超过451个赞
知道小有建树答主
回答量:1063
采纳率:0%
帮助的人:921万
展开全部
这个问题可以实现
到要搞清楚
用Vb psotmessage 时 参数hwnd 必须是要接受消息的窗口的句柄
但 如果程序有子窗口 就要把信息发到要接受消息的的子窗口的hwnd上
楼上的Text1.hwnd就是text1.hwnd 但对于其他程序 你要自己枚举出窗口的hwnd
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式