Я хочу найти все окна, которые полностью или частично накладываются, мое окно (сверху его). Как особый случай, если у меня есть два дескриптора окна (hWnd1 и hWnd2), я хочу найти, перекрывает ли hWnd2 частично или полностью hWnd1. Рассматриваемые окна являются настольными окнами (не дети/одноуровневые элементы в том же процессе).
Итерируйте окна, которые могут перекрывать ваше, многократно вызывая GetWindow (), используя GW_HWNDPREV. Используйте GetWindowRect (), чтобы проверить, действительно ли такое окно перекрывает ваше. Для двух известных окон нет ярлыка, просто проверьте, возвращает ли GetWindow () hWnd2 во время итерации.