我正在尝试创建一个允许我运行事件的应用程序,即使该应用程序不在焦点上。当我使用 [ctrl + alt + V] 触发事件时,它会在数组中选择一个随机字符串并将其粘贴到当前选定的输入框中(这可能是在 Firefox、记事本、游戏中......)。但是,应用程序不会粘贴剪贴板中的信息。我正在使用SendKeys.Send("^v")
复制 [ctrl + V]。
任何改进代码或解决问题的建议将不胜感激。
Public Class Form
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Tmr.Interval = 100
Tmr.Start()
End Sub
Private Sub Tmr_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Tmr.Tick
If CBool(GetAsyncKeyState(Keys.ControlKey)) And CBool(GetAsyncKeyState(Keys.V)) Then
' Create Variables for Array
Dim PhrasesArray() As String = {"1", "2", "3", "4"}
Dim Rand As New Random()
Dim Index As Integer = Rand.Next(0, PhrasesArray.Length - 1)
Dim SelectedValue = PhrasesArray(Index)
My.Computer.Clipboard.SetText(SelectedValue) ' Copy To clipboard
End If
End Sub
End Class
更新:我都试过了:它们SendKeys.Send("^(v)")
都SendKeys.Send("^v")
不会触发粘贴命令。我试图SendKeys.Send("{ENTER}")
查看是否有任何 SendKeys 有效,它确实有效。使用SendKeys.Send("{ENTER}")
应用程序触发了回车键。