我在发送按键的时候/
为什么发送按键到游戏的时候会丢失一些!
而在文本文档里却一个都不丢?为什么?
难道是系统处理不过来,抛弃了?
我试过好多的延时的方法,
比如SLEEP《=这个不行,应为程序不能停止运行!
用WHILE WEND太占用系统资源,影响到了别的程序的运行!也不行!
甚至我都试过了TIMER。都不行。
还有什么好的方法了吗

解决方案 »

  1.   

    postmessage  或 sendmessage  往游戏里发按键消息,看看(成功/失败)的返回值
      

  2.   

    Private Declare Function GetTickCount Lib "kernel32" () As LongPublic Sub Wait(ByVal lMilliseconds As Long)
       Dim lTm     As Long
       lTm = GetTickCount
       Do While GetTickCount - lTm < lMilliseconds
          DoEvents
       Loop
    End Sub
      

  3.   

    to:heng_s(渣渣) 
    用了DO WHILE 很占系统资源的!
    还有别的好办法吗?
    我是操作中断来模拟按键的~
      

  4.   

    Private Sub Delay(mSec As Long)
        On Error GoTo ShowErr
        
        Dim TStart  As Single
        
        TStart = Timer
        
        While (Timer - TStart) < (mSec / 1000)
            DoEvents
        Wend
        Exit Sub
    ShowErr:
        Exit Sub
    End Sub''''''''''''''''''''''''''''''''''''''''''
    while 循环的主体在 DoEvents ,不会占用很多资源,你可以先试试delay 1000 ''延时一秒
      

  5.   

    看看的得一个函数吧,使用方便Public Sub 间隔时间(毫秒 As Long)
       Dim 当前时间 As Long, 判断时间 As Long
       判断时间 = GetTickCount
       Do
          DoEvents
          当前时间 = GetTickCount
       Loop While 当前时间 - 判断时间 < 毫秒
    End Sub
      

  6.   

    只能用Do while,只要加了Doevents,问题不大
      

  7.   

    To cbxmir(在别处) :
    你没见我在Do While 之间加了DoEvents么?没问题的,不会有感觉的