拦截打开窗口 - C#

时间:2012-10-24 22:56:02

标签: c# windows event-handling window

有没有办法观察/拦截Windows中的窗口,然后阻止所述窗口打开?这将是一个已经运行的应用程序,我不想停止该过程,只需关闭它产生的弹出窗口。

更新

  1. 进程已在运行(例如,它位于任务管理器中),但没有可见的窗口。
  2. 在某个随机时间,该过程将弹出一个窗口
  3. 我手动关闭窗口(单击“确定”)。
  4. 此过程继续在此时运行,稍后会再次弹出一个窗口(重复这些步骤)。
  5. 我想自动执行步骤#3,我必须手动关闭弹出窗口,通过拦截该窗口打开和关闭它或隐藏它或永远不要让它打开。我不想通过轮询打开的窗口来做到这一点。我想收到一个窗口即将打开的事件。

    我不控制其他应用程序,所以我不能改变它。我本不希望杀死这个过程。

1 个答案:

答案 0 :(得分:0)

如果您正在尝试按我的要求执行(一次只允许一个程序实例运行),这是使用Mutex的优雅解决方案。您可以复制并粘贴大部分代码,以达到您想要的效果。