WndProc(参考消息m),防止最小化游戏,发送击键

时间:2010-03-08 22:53:14

标签: c# directx ui-automation

概述:

我打算创建一个与游戏和其他应用程序接口的触摸应用程序。这个概念类似于 touch-buddy.com 上的应用程序,但我将使用C#和WPF而不是如何在Perl中编写应用程序。

我想要评估一些挑战。 touch-buddy应用程序在与游戏交互时使用两种方法;

  1. 客户端模式(同一台机器运行游戏和触摸伙伴)。
  2. 服务器/客户端模式,其中单独的框将命令发送到游戏机。
  3. 我相信这种方法的原因是为了避免游戏最小化的问题。

    在仅限客户端模式中,我遇到的问题是我触摸屏幕以外的屏幕,而不是观看游戏的主屏幕,然后游戏最小化。并非所有游戏都有此行为,但我想征服最小化并阻止它的游戏。

    是否可以保持游戏前端和中心聚焦并防止最小化利用C#WndProc(参考消息m)?

    我一直在尝试 WndProc (参考消息m),我创建了一个win表单,当我在我自己的Win表单上按最小化时,它将关闭记事本的实例。这向我证明我可以捕获消息,防止该消息冒泡,然后向另一个应用程序发送消息。然后我尝试用我的触摸屏点击记事本,并保持我的胜利形式应用程序的焦点,而不是最小化。此时我不成功。我需要更多时间来理解消息代码。

    这是正确的做法吗?可以吗?我应该查看其他库,例如Windows Automation吗?

    关键输入是我的另一个问题。将击键发送到其他应用/游戏的最佳方式是什么?我应该使用DirectX,使用某种发送密钥,Automation Framework?其中任何一个都可以处理某些模拟游戏需要的多个击键吗?

    我感谢您可能拥有的任何链接或洞察力。如果你出于任何原因走下这条路,我很乐意听取你的意见。

    斯坦

1 个答案:

答案 0 :(得分:-1)

以下是所有windows user32.dll API调用的完整列表及其声明:

http://www.webtropy.com/articles/art9-2.asp?lib=user32.dll

也许你应该看一下,也许可以玩一些Windows钩子