Question

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...

Was it helpful?

Solution

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 ..."

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top