获取任务栏中的所有窗口

时间:2009-11-15 15:09:19

标签: c# winapi pinvoke

我一直在谷歌搜索几个小时但无法找到任何方法来获取任务栏中的所有窗口。 我需要最小化/最大化所有窗口,但是使用enumthreadwindows,所有系统进程 - 线程窗口都被最大化/恢复,并且我的电脑因为1000个窗口试图最大化/恢复而崩溃......

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:1)

任务栏中显示的窗口与按 ALT + Tab 时显示的窗口相同,因此您可以查看这些链接。

Enumerate windows like alt-tab does

Which windows appear in the Alt+Tab list?

答案 1 :(得分:0)

您应该尝试使用EnumDesktopWindows()documentation here)。它会将枚举限制在顶级窗口,这些窗口是桌面的一部分。

答案 2 :(得分:-1)

IShellDispatch4.ToggleDesktop最小化/最大化所有桌面窗口