通过使用以下方法将焦点更改事件处理程序添加到程序中的窗口:
Automation.AddAutomationFocusChangedEventHandler(myHandler)
外部程序无法正常运行。当我的程序运行并正在监听事件时,坦克世界的发射器无法启动坦克游戏客户端的世界。这是有问题的,因为我的程序应该在多台计算机上全天候运行,当我知道它干扰一个程序时,它可能会干扰其他程序。
感兴趣的代码:
public static void SetWindowFocusChangeSubscriber()
{
AutomationFocusChangedEventHandler focusHandler = new AutomationFocusChangedEventHandler(OnFocusChange);
Automation.AddAutomationFocusChangedEventHandler(focusHandler);
}
private static void OnFocusChange(object src, AutomationFocusChangedEventArgs e)
{
return;
}
所以有人知道为什么会这样吗?以及如何解决它?我是否需要避免使用自动化库?
编辑:哦,顺便说一句,我的程序绝不是坦克世界的附属品,或者想要与之互动。它只是想检测活动窗口何时发生变化。