2010-08-04 93 views
3

我用FindWindow來獲取外部應用程序窗口的句柄。如何使用此句柄來激活外部應用程序的窗口(如果它已最小化或在Windows桌面上的其他應用程序後面)?如何激活外部應用程序的窗口

回答

3

爲了防止集中竊取(或者至少讓意外的重點竊取更困難),Windows爲一個進程提出了一些障礙,將另一個進程的窗口置頂。

查看SetForegroundWindow(特別是在備註部分)和AllowSetForegroundWindow的MSDN。

您應該向流程發送消息以告訴其恢復其自己的窗口,或者該流程必須明確允許您的流程執行此操作。

+0

謝謝,那似乎是那裏的問題。 – Eloff 2010-08-05 19:44:16

0

FindWindow()後面跟着ShowWindow()。

+0

我試過ShowWindow和BringWindowToTop沒有成功,他們工作的外部進程的窗口? – Eloff 2010-08-04 23:13:07

+0

只要您已成功檢索到該窗口的句柄。 – karlphillip 2010-08-04 23:38:46