Проверка на корректность hWnd

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
Space
Combo-маньяк
Combo-маньяк
 
Сообщения: 818
Зарегистрирован: 11.01.2007 (Чт) 1:19
Откуда: Украина

Проверка на корректность hWnd

Сообщение Space » 23.11.2009 (Пн) 18:08

В каких пределах лежит hWnd? Например, GetForegroundWindow возвращает хендл, и предполагается, что ошибки нет, т.е. хендл вернёт всегда. Отсюда сложно понять, в каких пределах он лежит, но наверняка, он не может быть равен 0... Просто в проце хочу поставить проверку на корректность переданного ей hWnd.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Проверка на корректность hWnd

Сообщение Денис » 23.11.2009 (Пн) 18:11

IsWindow(hWnd)
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Проверка на корректность hWnd

Сообщение Хакер » 23.11.2009 (Пн) 18:27

Space писал(а):В каких пределах лежит hWnd? Например, GetForegroundWindow возвращает хендл, и предполагается, что ошибки нет, т.е. хендл вернёт всегда. Отсюда сложно понять, в каких пределах он лежит, но наверняка, он не может быть равен 0...

Space наверное программирует для какой-то вымышленной ОС, в которой функции ведёт себя ровно так, как ему того хочется.

Вообще-то в MSDN всегда написано, в каких случаях возвращается хендл, а в каких ошибка и как отличить. В частности, насчёт этой функции сказано:
The return value is a handle to the foreground window. The foreground window can be NULL in certain circumstances, such as when a window is losing activation.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Space
Combo-маньяк
Combo-маньяк
 
Сообщения: 818
Зарегистрирован: 11.01.2007 (Чт) 1:19
Откуда: Украина

Re: Проверка на корректность hWnd

Сообщение Space » 23.11.2009 (Пн) 18:41

и что из этого следует? Что в данный момент никакое окно не является активным?

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Re: Проверка на корректность hWnd

Сообщение Twister » 24.11.2009 (Вт) 9:30

Такая ситуация может возникнуть
when a window is losing activation


По поводу того, в каких диапазонах лежит hWnd и что это вообще такое отправлю тебя вот к этим своим статьям: http://wasm.ru/article.php?article=window_inject и http://wasm.ru/article.php?article=hooks_inside. В принципе, достаточно прочитать первую, чтоб ответить на твои вопросы. Вторая, так... на всякий :)
А я все практикую лечение травами...


Вернуться в Народный треп

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 42

    TopList