【问题标题】:Send key to inactive window of process [duplicate]将密钥发送到进程的非活动窗口[重复]
【发布时间】:2012-04-04 15:06:12
【问题描述】:

我想用 C# 创建一个简单的程序,它将 SPACE 键发送到非活动窗口或进程 (Wow.exe)。但是,我对 C# 不了解,所以如果您想尝试帮助我,请做,但如果您不介意向菜鸟解释,那很好;)

所以基本上这个小程序将用于魔兽世界游戏,并希望每 30 秒向游戏发送一个 SPACE 键并让角色跳跃。防止字符自动离开键盘。

这将是一个单按钮程序,一旦您单击按钮,它将开始发送 SPACE 键,并在程序关闭时停止。但是,即使它不是当前的活动窗口,我也希望它能够将密钥发送到游戏。这样我就可以在 Netflix 上观看电影并让它在后台播放。

点击按钮时我会在里面放什么?...

private void btnStart_Click(object sender, EventArgs e)
{

}

如果它比在其中插入一些代码更复杂,请说,我不会费心去尝试:P

【问题讨论】:

    标签: c#


    【解决方案1】:

    您需要获取窗口句柄 (Process.MainWindowHandle),然后是 P/InvokeSendMessage 函数、WM_KEYDOWNvirtual key code for space bar

    【讨论】:

    • 我稍后会阅读并尝试让它工作。谢谢您的帮助。 =)
    【解决方案2】:

    它无法发送到非活动窗口,因为活动只是写 Keys.Send("{SPACE}");or Keys.SendWait("{SPACE}");

    【讨论】:

      猜你喜欢
      • 2014-03-21
      • 1970-01-01
      • 1970-01-01
      • 2014-02-15
      • 1970-01-01
      • 2021-07-28
      • 1970-01-01
      • 1970-01-01
      • 2012-10-11
      相关资源
      最近更新 更多