Vb.net sendkeys, буквы дублируются?

Я создал простой тест с SendKeys и попробовал как SendWait, так и 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

Я тестировал в skype, и несколько букв удвоились. Я тестировал Flash, я получил "Iffff yyouu cccaaaannn rrreaaaddd thhhiiisss,, iiittt wwwooorrrrkkks".

Ясно, что проблема вызвана задержкой. Что я могу сделать, чтобы предотвратить удвоение (или утроение) букв? Мне, наверное, здесь что-то не хватает...

Ответ 1

В настройках вашего приложения (app.config в решении Visual Studio или <myapp>.exe.config, когда они расположены рядом с приложением) добавьте следующее в качестве дочернего элемента <configuration>:

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

Если это не работает, попробуйте:

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

Источник: SendWait() [MSDN]

"... В результате класс SendKeys могут вести себя по-разному на разных операционные системы..."