Узнаем Handle любого активного окна. Как?

Тема в разделе "WASM.BEGINNERS", создана пользователем beginerHacker, 16 фев 2010.

  1. beginerHacker

    beginerHacker New Member

    Публикаций:
    0
    Регистрация:
    14 дек 2009
    Сообщения:
    30
    Доброй НОЧИ!!!!!!
    Использовал функцию GetForegroundWindow. Но она меня не совсем устраивает...
    Вот почему:
    открываем окно А (получаем его хэндл)-сохраняем имя окна в буфере функцией GetWindowText.(окно А не закрываем)
    Открываем окно B(получаем его handle)-сохраняем имя в буфере той же функцией(окно не закрываем). Вот теперь активизируем окно А. Но после этого в буфер НЕЕЕ идет его название. Точно также ка не идет название окна B.
    Что делать? может есть другая функция?
    Благодарю за внимание!!!
     
  2. UnderCtl

    UnderCtl New Member

    Публикаций:
    0
    Регистрация:
    12 фев 2010
    Сообщения:
    16
    > о после этого в буфер НЕЕЕ идет его название. Точно также ка не идет название окна B.

    а почему оно туда "идти" должно? \
     
  3. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Если возвращается NULL, то значит этот случАй :) При обилии приложений с всплывающими подсказками и прочим "барахлом" функция GetForegroundWindow обязана безбожно врать.
    Ее работоспобность в вашем случае основана на
    .
    Где гарантия, что другие механизмы не дадут приоритет потоку, которой вообще без окна.
     
  4. beginerHacker

    beginerHacker New Member

    Публикаций:
    0
    Регистрация:
    14 дек 2009
    Сообщения:
    30
    Потому, что, мне так нужно.....
    А как же мне быть?(
     
  5. beginerHacker

    beginerHacker New Member

    Публикаций:
    0
    Регистрация:
    14 дек 2009
    Сообщения:
    30
    Подзарез нужно знать handle активного окна.
    Что можете посоветовать?????
    Может КАК ТО можно фильтровать процессы, потоки?
     
  6. l_inc

    l_inc New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2005
    Сообщения:
    2.566
    Неверно. Активность окна (равно как и результат работы GetForegroundWindow) абсолютно никак не связана приоритетом потока несмотря на то, что обратное утверждение верно.
    AFAIK странное поведение. GetForegroundWindow должна отрабатывать правильно (возможно, за редкими исключениями, которые должны исправляться добавлением минимальной задержки и повторным вызовом). Без примера кода это гадание по звёздам.