请问如何模拟键盘输入???(50分)

  • 主题发起人 主题发起人 whaoye
  • 开始时间 开始时间
W

whaoye

Unregistered / Unconfirmed
GUEST, unregistred user!
比如我有个程序,然后我放一个记时器,设置在5秒后执行一个过程,过程执行完后计时器就无效<br>,在这个过程里面,要发送一个ctrl+shift 的组合键,<br>然后切换到其他的程序,比如我打开记事本,过5秒,要让记事本收到ctrl+shift也就是打开输入法<br>要如何做到?????<br><br>非要用hook吗?我用keybd-event的时候,为什么,shift按下去了后,就不知道起来了,<br>呵呵,要怎么做呢|???
 
去看一看<br>http://www.china-pub.com/computers/emook/1166/info.htm<br>那篇文章,我写的<br>你就知道了<br>别忘了给分哦!
 
跑不了的。
 
我试过了,好象不好用,没有打开我的输入法啊,为什么呢,是不是非要用hook呢,并且<br>keybd-event用的时候,会不能自动释放键盘,虽然我已经发出up命令
 
可以啊<br>keybd_event(vk_ctrl,0,0,0); <br>keybd_event($49,0,0,0); <br>keybd_event($49,0,KEYEVENTF_KEYUP,0);  <br>keybd_event(vk_ctrl,0,KEYEVENTF_KEYUP,0); ...   
 
我知道,就是这个样子,还是不行,为什么呢?非要hook吗????
 
不用啊,等shift放开,在放开ctrl不行吗?
 
Delphi 5开发人员指南提供了 Jordon HOOK的 SendKey全部源代码。
 
我已经把keybd_event和mouse_event的源码上传了<br>到我主页上去下吧<br>mysofts.51.net &nbsp;或 &nbsp;laikankan.myrice.com<br>也许对你有所帮助<br><br>另外,要用sendkey的话,我主页社区有一篇!<br><br><br>
 
感谢coolbaby的热心,其实我试过一般的字母可以,但是碰到一些系统按键好象就不大好使了<br>然后我sendmessage也是的,如果是字母就很好,碰到ctrl,shift等系统的东西就不好弄了<br>wm_char,wm_keydown,wm_syskeydown都试过了,算了还是学学hook算了,也可以提高一些。<br><br><br>接受答案。
 
后退
顶部