Из нескольких предварительных тестов кажется, что EnumWindows
всегда возвращает окна в обратном порядке создания экземпляра, то есть самое последнее окно с последними экземплярами. Действительно ли это наблюдение? Если да, то это верно для всех версий Windows? И является ли это надежным предположением, т.е. Является ли это поведение документированным где-то?
Контекст: я имею дело с ситуацией, когда я запускаю стороннее приложение для открытия нескольких немодальных окон, и мне нужно отправить некоторые оконные сообщения в эти окна, когда они открыты, но я не уверен -fire способ идентифицировать их, поскольку ни их оконные классы, ни их подписи не будут отличаться, и я также не знаю их ожидаемых координат. Однако, если бы я мог положиться на описанное выше поведение EnumWindows
, я мог бы просто использовать первый дескриптор, возвращенный EnumWindows
, чей класс и подпись соответствуют моему ожиданию. Это все еще оставляет некоторые гипотетические отверстия в петле, но я думаю, что это будет достаточно хорошо. Тем не менее альтернативные предложения приветствуются.