我用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 wwwooorrrkkks”.
显然这个问题是由滞后引起的.我可以做些什么来防止信件翻倍(或三倍)?我可能在这里错过了一些大事
在您的应用程序设置(Visual Studio解决方案中的app.config或与应用程序并排定位时的< myapp> .exe.config)中,添加以下作为< configuration>元件:
<appSettings> <add key="SendKeys" value="SendInput"/> </appSettings>
如果不行,请尝试:
<appSettings> <add key="SendKeys" value="JournalHook"/> </appSettings>
资料来源:SendWait() [MSDN]
“… As a result,the SendKeys class may behave differently on different operating systems …”