Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net Sendkeys仅在首次激活窗口时工作_Vb.net_Google Chrome_Sendkeys - Fatal编程技术网

Vb.net Sendkeys仅在首次激活窗口时工作

Vb.net Sendkeys仅在首次激活窗口时工作,vb.net,google-chrome,sendkeys,Vb.net,Google Chrome,Sendkeys,当我打开一个窗口时,代码工作得完美无缺。但是当我有更多的实例运行时,我需要首先激活窗口。似乎SetForegroundWindow(p.MainWindowHandle)工作不正常 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click For Each p As System.Diagnostics.Process In System.Diagnostics.Process.GetPr

当我打开一个窗口时,代码工作得完美无缺。但是当我有更多的实例运行时,我需要首先激活窗口。似乎
SetForegroundWindow(p.MainWindowHandle)
工作不正常

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

For Each p As System.Diagnostics.Process In System.Diagnostics.Process.GetProcesses()
    If p.ProcessName = "chrome" AndAlso p.MainWindowTitle.Contains("game") AndAlso p.MainWindowHandle <> IntPtr.Zero Then
        SetForegroundWindow(p.MainWindowHandle)
        SendKeys.SendWait("{F2}")
    End If
Next

End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
For Each p As System.Diagnostics.Process In System.Diagnostics.Process.GetProcesses()
    If p.ProcessName = "chrome" AndAlso p.MainWindowTitle.Contains("chat") AndAlso p.MainWindowHandle <> IntPtr.Zero Then
        SetForegroundWindow(p.MainWindowHandle)
        SendKeys.SendWait("{F2}")
    End If
Next
End Sub
Private子按钮1\u单击(发送者作为对象,e作为事件参数)处理按钮1。单击
对于每个p,在System.Diagnostics.Process.GetProcesses()中作为System.Diagnostics.Process
如果p.ProcessName=“chrome”和p.MainWindowTitle.Contains(“游戏”)以及p.MainWindowHandle IntPtr.Zero,则
SetForegroundWindow(p.MainWindowHandle)
SendKeys.SendWait(“{F2}”)
如果结束
下一个
端接头
私有子按钮2\u单击(发送者作为对象,e作为事件参数)处理按钮2。单击
对于每个p,在System.Diagnostics.Process.GetProcesses()中作为System.Diagnostics.Process
如果p.ProcessName=“chrome”和p.MainWindowTitle.Contains(“chat”)以及p.MainWindowHandle IntPtr.Zero,则
SetForegroundWindow(p.MainWindowHandle)
SendKeys.SendWait(“{F2}”)
如果结束
下一个
端接头

有什么意见吗?

你有什么意见?窗口在接收关键事件之前必须被激活/聚焦?(是的..如果系统上的每个窗口都一直在监听关键事件,这将非常恼人,这将彻底扼杀多任务处理)首先:您是否验证了它确实传递了
if
-语句,即到达了
SetForegroundWindow
部分代码?--第二:让我们看看你的
setforegroundindow()
声明,这样我们就可以知道它是否正确。你有什么抱怨?窗口在接收关键事件之前必须被激活/聚焦?(是的..如果系统上的每个窗口都一直在监听关键事件,这将非常恼人,这将彻底扼杀多任务处理)首先:您是否验证了它确实传递了
if
-语句,即到达了
SetForegroundWindow
部分代码?--第二:向我们展示您的
setforegroundindow()
声明,以便我们可以查看它是否正确。