0

我有一个旧应用程序(游戏),它从位置 0、0 开始,并且是对话框样式的。不能以常规方式移动它,不能调整大小,非常烦人。我无法访问源代码,只能访问已编译的应用程序。

我使用 HwndHost 以 wpf 形式托管此应用程序,效果很好。非常平滑地调整窗口大小和移动窗口。

麻烦的是我需要所有的键盘和鼠标输入,而我的 wpf 表单具有焦点,才能传递给托管应用程序。

我不需要过滤任何消息或任何其他花哨的东西,只需要我的 wpf 表单变得愚蠢并忽略所有内容,而托管进程获取所有输入。

最好的方法是什么?

由于它不在进程中,我知道这可能会导致一些问题,但我希望那里有一个简单的解决方案。

有趣的是,我确实在托管应用程序中看到了鼠标移动(特别是在应用程序光标中),但它似乎错过了点击和/或键盘输入。

谢谢!

休伦。

4

1 回答 1

0

由于这给我造成的所有问题,我决定使用另一种方法。我现在在 winform 中托管进程外应用程序,而不是使用 hwndhost 的 wpf 表单。

这会导致托管应用程序自动接收键盘和鼠标的所有输入。

让我的工作轻松多了。

唯一的缺点是调整大小很难与我在 wpf hwndhost 中调整大小相提并论。但我可以忍受,无论如何移动应用程序是我的首要任务。

于 2013-01-25T11:14:54.707 回答