【问题标题】:Game Killer doesnt work in game c#Game Killer 在游戏 c# 中不起作用
【发布时间】:2015-11-21 20:22:31
【问题描述】:

我正试图通过按 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 键盘事件。我不确定你怎么说上面的代码是有效的,一个表单不应该在构造函数中接收关键事件,除非你在打开表单时可能按住键。

标签: c# process kill


【解决方案1】:

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

如果您希望即使在不是活动窗口的情况下也能截取按键,那么您需要一个全局键盘挂钩。网络上散布着一些这样的例子。乍一看很有希望的是this article on CodeProject

猜你喜欢
  • 1970-01-01
  • 2021-07-18
  • 1970-01-01
  • 2018-09-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多