使用VS2003(.Net 1.1)我们有一个MFC MDI应用程序,它将C#窗口作为COM客户端生成。
我们需要捕获应用程序中的所有用户输入,我们当前正在使用CWinApp :: PreTranslateMessage()来捕获前往MFC窗口的命令,但这显然无法捕获前往C#窗口的消息。 / p>
在C#客户端中捕获所有用户输入的最佳方法是什么?
答案 0 :(得分:0)
你控制C#窗口吗?如果是这样,C#表单有一个WndProc
方法,您可以覆盖并过滤那里的消息。
如果这是一个标准的WinForms应用程序,你可以添加一个处理程序到Application.AddMessageFilter
来在C#中创建一个消息钩子。 (请参阅我的帖子here。)我不确定这是否可行,因为表单位于MFC应用程序中。