gpt4 book ai didi

c# - 如何集中监控发送到应用程序或 winform 的消息

转载 作者:行者123 更新时间:2023-11-30 18:07:08 26 4
gpt4 key购买 nike

如何从我的应用程序 (winforms) 的一个中心位置捕获所有窗口的消息。我需要在我的应用程序(例如 programm.cs 或 Mainform)中有一个中心位置,它可以对每个创建使用react或交替显示每个表单(WM_FORMSHOW 0x18)。表单由其他开发人员和插件共同提供,但它们在默认的应用程序域中被激活。尽管在另一个应用程序域中激活也是一个有趣的案例。

环境是 .Net 3.5 或 4 和 c#。

谢谢

最佳答案

您可以通过创建 IMessageFilter 来捕获 Windows 消息, 并通过 Application.AddMessageFilter 添加到应用程序中.

在您的 IMessageFilter 实现类中,您实现了 PreFilterMessage,您可以在其中查找您想要的任何内容 - 它被传递给一个 Message它包含与 C 风格的 Windows 消息循环相同的数据。请注意,如果您愿意,您还可以将 IMessageFilter 添加到特定表单,就像整个应用程序消息循环一样。

关于c# - 如何集中监控发送到应用程序或 winform 的消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4225996/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com