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()
声明,以便我们可以查看它是否正确。