Vb.net sendkeys, letters duplicate?

孤街醉人 提交于 2019-12-05 17:49:36

问题


I created a simple test with SendKeys, and tried both SendWait and Send.

 Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Click
    System.Threading.Thread.Sleep(10000)
    SendKeys.SendWait("If you can read this, it works." + "{ENTER}")
End Sub

I tested in skype, and a few of the letters doubled. I tested in Flash, I got "Iffff yyouu cccaaaannn rrreaaaddd thhhiiisss,,, iiittt wwwooorrrrkkks."

Clearly the issue is caused by lag. What can I do to prevent doubling (or tripling) of letters? I'm probably missing something big here...


回答1:


In your app settings (app.config in a Visual Studio solution, or <myapp>.exe.config when located side by side to the application), add the following as child of the <configuration> element:

<appSettings>    
    <add key="SendKeys" value="SendInput"/>    
</appSettings> 

If that doesn't work, try:

<appSettings>    
    <add key="SendKeys" value="JournalHook"/>    
</appSettings> 

Source: SendWait() [MSDN]

"... As a result, the SendKeys class may behave differently on different operating systems ..."



来源:https://stackoverflow.com/questions/2346281/vb-net-sendkeys-letters-duplicate

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!