1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Хук Wh_getmessage.

Тема в разделе "С и С++", создана пользователем solova, 13 апр 2011.

  1. solova

    solova Гость

    Репутация:
    0
    Я так и не понял ловит ли (WH_GETMESSAGE) WM_COMMAND-ы.
    В нэте находил посты где писали что он только с Postmessa-джами работает,
    а так же находил посты где даже код предоставляли который ловит (но для локалки)
    Если всё таки можно отловить:
    Взгляните ктонить на мой код, что там не так.(там ещё отлов"PostMessag-а"WM_SYSCOMMAND)<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Код</div></div><div class="sp-body"><div class="sp-content">
    Код:
    ...
    hHook = SetWindowsHookEx(WH_GETMESSAGE,GetMsgProc,(HINSTANCE)hDll,dwThrd);
    ...
    LRESULT CALLBACK GetMsgProc(int nCode,WPARAM wP,LPARAM lP)
    {
    if(nCode >= 0) //HC_ACTION
    {
    LPMSG msg = (LPMSG)lP;
    if(wP==PM_REMOVE)
    {
    if((msg->message==WM_SYSCOMMAND)&&(LOWORD(msg->wParam)==57665))//Spy++ >>PostMessage
    {
    MessageBox(NULL,L"WM_SYSCOMMAND",L"От Хука",MB_OK);
    }
    }
    if((msg->message==WM_COMMAND)&&(LOWORD(msg->wParam)==57665))//Spy++ >>SendMessage
    {
    MessageBox(NULL,L"WM_BUTTON",L"От Хука",MB_OK);
    }
    }
    return CallNextHookEx(hHook,nCode,wP,lP);
    }
    WM_SYSCOMMAND ловит нормально(правда без if(wP==PM_REMOVE) ловит сообщение дважды)
    а WM_COMMAND не могит поймать.

    ПыСы: а if(wP==PM_REMOVE) что проверяет?
    типа?
    - "уже выполненный Мессадж удаляется из списка Постмессаджов"
    или на оборот?
    - "начинает выполнятся ,но не удаляется" (удалится после выполнения)
     
  2. solova

    solova Гость

    Репутация:
    0
    уже сам выяснил -- WH_GETMESSAGE не ловит SendMessage
     
Загрузка...
Похожие Темы - Хук Wh_getmessage
  1. alekssgor
    Ответов:
    0
    Просмотров:
    1.294

Поделиться этой страницей