我正在尝试编写一个Python程序,它可以检测到警报框/对话框的出现。它需要处理多个监视器,并且当任务栏图标闪烁、出现错误/通知等时,我希望它在辅助监视器上显示可视化效果。
据我所知,检测这些事件的方法是使用消息钩子,如此处所述:http://msdn.microsoft.com/en-us/library/ms632589%28v=vs.85%29.aspx 我甚至幸运地找到了一个示例,该示例从Python访问SetWindowsHookEx函数(此特定示例使用鼠标信号,但我只需更改常量以侦听不同的消息)。 http://www.python-forum.org/pythonforum/viewtopic.php?f=2&t=11154 然而,上面的示例不起作用。回调函数从未被调用,无论我的鼠标点击如何,中间鼠标点击也不会导致程序退出。
该示例来自2009年(Windows 7之前?),虽然我不知道是否是问题所在。
因此,我的问题是,有人能够1.找出代码为什么不起作用,或2.告诉我另一种实现我所需功能的方法(最好是用Python,但如果必要,我会尝试其他语言)。
编辑:使用WMI是否可以实现我想要的功能?我不了解WMI,但我知道它有非常好的Python接口。
据我所知,检测这些事件的方法是使用消息钩子,如此处所述:http://msdn.microsoft.com/en-us/library/ms632589%28v=vs.85%29.aspx 我甚至幸运地找到了一个示例,该示例从Python访问SetWindowsHookEx函数(此特定示例使用鼠标信号,但我只需更改常量以侦听不同的消息)。 http://www.python-forum.org/pythonforum/viewtopic.php?f=2&t=11154 然而,上面的示例不起作用。回调函数从未被调用,无论我的鼠标点击如何,中间鼠标点击也不会导致程序退出。
该示例来自2009年(Windows 7之前?),虽然我不知道是否是问题所在。
因此,我的问题是,有人能够1.找出代码为什么不起作用,或2.告诉我另一种实现我所需功能的方法(最好是用Python,但如果必要,我会尝试其他语言)。
编辑:使用WMI是否可以实现我想要的功能?我不了解WMI,但我知道它有非常好的Python接口。