2012-10-24 118 views
1

有什么方法可以监视/拦截Windows中的窗口打开,然后阻止打开窗口?这将是一个已经运行的应用程序,我不想停止这个过程,只关闭它产生的弹出窗口。拦截打开窗口 - C#

更新

  1. 一个进程已经运行(例如,它在任务管理器),但没有可见窗口。
  2. 在某个随机时间,该过程将弹出一个窗口
  3. 我手动关闭窗口(单击“确定”)。
  4. 此过程继续运行,稍后将再次弹出一个窗口(重复这些步骤)。

我想自动执行步骤#3,在那里我必须手动关闭弹出窗口,通过拦截打开和关闭窗口或隐藏窗口或永远不让它打开。我不想通过查询打开的窗口来做到这一点。我想收到一个窗口即将打开的事件。

我不控制这个其他应用程序,所以我不能改变它。我不想自己杀死这个过程。

+0

从开幕?也许,你可以检测并关闭它。除非应用程序编写得很差,或者为了解决这个问题而编写应用程序,否则很容易崩溃。 –

+0

因此,您正在尝试检测应用程序是否已在运行,因此第二个副本无法加载? –

+0

已更新的问题。对不起,有任何困惑。 – Chad

回答

0

如果您正在尝试执行所要求的操作(一次只允许运行一个程序实例),请使用Mutex这个优雅的解决方案。您可以复制并粘贴大部分代码以实现您想要的功能。