.net Can';t使用(SendKeys.Send)粘贴字符串
我正在尝试创建一个应用程序,该应用程序允许我运行事件,即使该应用程序未处于焦点。当我使用[ctrl+alt+V]触发事件时,它将在数组中选择一个随机字符串,并将其粘贴到当前选定的输入框中(在firefox、记事本、游戏中可能是…)。但是,应用程序不会从剪贴板粘贴信息。我正在使用.net Can';t使用(SendKeys.Send)粘贴字符串,.net,vb.net,winforms,paste,keyhook,.net,Vb.net,Winforms,Paste,Keyhook,我正在尝试创建一个应用程序,该应用程序允许我运行事件,即使该应用程序未处于焦点。当我使用[ctrl+alt+V]触发事件时,它将在数组中选择一个随机字符串,并将其粘贴到当前选定的输入框中(在firefox、记事本、游戏中可能是…)。但是,应用程序不会从剪贴板粘贴信息。我正在使用SendKeys.Send(“^v”)复制[ctrl+v] 任何改进代码或解决问题的建议都将不胜感激 Public Class Form Private Sub Form1_Load(ByVal sender As Sy
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}”)
应用程序触发了回车键。如果要发送Ctrl+v,可以使用SendKeys.Send(^(v)”
检查要发送的每个不同命令键的文档:您的意思是什么?它不发送任何键,或者只发送^vI。我希望基本上触发粘贴命令来粘贴复制到剪贴板的文本。粘贴的快捷方式是[ctrl+v],这就是我想使用sendkeys的原因。不幸的是,它不起作用。我尝试了两种方法:
SendKeys.Send(^(v)”)
和SendKeys.Send(^v”)
它不会触发粘贴命令。谢谢你试着帮助我。我认为你的答案是正确的,因为它是正确的。它确实起了作用。我自己的代码也能工作。问题是,很明显,alt键触发了应用程序中上下文菜单的一部分,删除了我将要发布工作的选定区域。