【问题标题】:Win API: Hook every window show or process executionWin API:挂钩每个窗口显示或流程执行
【发布时间】:2009-12-22 21:00:31
【问题描述】:

我们计划在我们的应用中构建某种单点登录功能。

我很清楚,我必须使用 Windows API 来实现对遗留应用程序控件的读取和写入,但据我搜索和测试,这并不是工作中最难的部分。

然而,有一点我直到现在才弄清楚如何继续:我如何“挂钩”系统以在每次在 UI 中弹出新窗口时得到通知?例如:当我启动计算器时,或者在 calc 中,“关于”窗口打开时。

有没有办法接收这种通知?如果是,如何?如果没有,是否有任何解决方法可以达到相同的结果?

提前谢谢你,

菲利普

【问题讨论】:

    标签: winapi


    【解决方案1】:

    您需要一个 Windows 系统挂钩,特别是 WH_CBT 挂钩,以监视 HCBT_CREATEWND 事件。这东西有点毛茸茸,但可能。

    开始here:

    【讨论】:

    • Tks,我还没有测试,但显然似乎是正确的方法。
    【解决方案2】:

    SetWinEventHookEVENT_OBJECT_SHOW 事件类型一起使用。最后拨打UnhookWinEvent

    类似的例子:https://stackoverflow.com/a/10280800/991267

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多