将密钥发送到进程的非活动窗口

时间:2012-04-04 15:06:12

标签: c#

我想在C#中创建一个简单的程序,它将SPACE键发送到非活动窗口或进程(Wow.exe)。但是,我不知道C#是什么,所以如果你想尝试帮助我请做,但如果你不能打扰解释一个菜鸟那么好;)

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

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

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

private void btnStart_Click(object sender, EventArgs e)
{

}

如果它比在里面插入一些代码更复杂,那就说,我不会费心去做:P

2 个答案:

答案 0 :(得分:3)

你需要抓住窗口句柄(Process.MainWindowHandle),然后P/Invoke SendMessage函数和WM_KEYDOWN以及virtual key code for space bar

答案 1 :(得分:0)

无法发送到非活动窗口,因为活动只需写入Keys.Send(“{SPACE}”);或Keys.SendWait(“{SPACE}”);