C# 游戏杀手在游戏c中不起作用#

C# 游戏杀手在游戏c中不起作用#,c#,process,kill,C#,Process,Kill,我试图通过按F7来终止游戏进程。当游戏最小化且窗体位于顶部时,应用程序确实可以工作。但当我玩游戏(最大化)时,应用程序不工作。我能做些什么来解决这个问题 这是我的密码 public Form1() { InitializeComponent(); } private void Form1_KeyDown(object sender, KeyEventArgs e) { if (e.K

我试图通过按F7来终止游戏进程。当游戏最小化且窗体位于顶部时,应用程序确实可以工作。但当我玩游戏(最大化)时,应用程序不工作。我能做些什么来解决这个问题

这是我的密码

    public Form1()
    {
        InitializeComponent();                 
    }   

    private void Form1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.F7)
        {
          foreach (Process p in System.Diagnostics.Process.GetProcessesByName("processs"))
          {
              p.Kill();
          }
        }
    }

当您按键时,只有活动窗口才会收到信息。如果这不是真的,那么每个正在运行的程序都必须主动忽略击键


如果您希望即使在非活动窗口时也能截获键,那么您需要一个全局键盘挂钩。网络上散布着一些这样的例子。第一眼看上去很有希望的是。

当您按下一个键时,只有活动窗口才会收到消息。如果这不是真的,那么每个正在运行的程序都必须主动忽略击键


如果您希望即使在非活动窗口时也能截获键,那么您需要一个全局键盘挂钩。网络上散布着一些这样的例子。乍一看很有希望的是。

您需要通过p/invoke直接连接到windows键盘事件,。我不确定上面的代码是如何工作的,但窗体不应该在构造函数中接收键事件,除非您在打开窗体时可能按住键。您需要通过p/invoke直接连接到windows键盘事件,。虽然我不确定上面的代码是如何工作的,但是窗体不应该在构造函数中接收键事件,除非您在打开窗体时可能按住了键