我使用注册了一个消息过滤器:
Application.AddMessageFilter(m_messageFilter);
使用这个方法,我可以记录用户在应用程序用户界面中进行的所有鼠标点击。
然而,一个对话框在单独的线程上运行,代码类似于:
void Run()
{
using( MyDialog dialog = new MyDialog() )
{
dialog.ShowDialog();
}
}
Thread thread = new Thread(Run);
我设置的消息过滤器无法查看发送到该窗口的消息。我该如何获取它们(最好不要太过侵入式)?
我尝试重写MyDialog.PreProcessMessage,但是我很困惑为什么这似乎从未被调用。
谢谢。