Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Опять хуки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ задание на строки символов http://www.cyberforum.ru/cpp-beginners/thread84921.html
Плз, мне щас над сдать задачу! Надо ввести строку, создать функцию, которая ищет в строке "!" и если находит, то удаляет все символы после него. Если этого символа "!" нет, то вывести сообщение об...
C++ Класс односвязного списка структур сижу ломаю голову над тем, что есть класс односвязного списка стуктур... суть такова: структура данных - односвязный список структур а структура данных должна быть реализована в виде класса я... http://www.cyberforum.ru/cpp-beginners/thread84900.html
C++ Числа Фибоначчи
Помогите пожалуйста решить задачу на С: Определить сумму всех чисел Фибоначчи не превышающих 1000
Решите пожалуйста C++
1.Сосчитать сколько в матрице неупорядоченных строк и распечатать их. 2.Выбросить из строки самое короткое и самое длинное слово. 3.Из заданного множества точек выбрать 3 образующие треугольник...
C++ описать словами указатель на функцию, функтор http://www.cyberforum.ru/cpp-beginners/thread84873.html
здравствуйте, помогите мне грамотно описать словами указатель на функцию, функтор. мол когда и зачем они используются Добавлено через 1 час 21 минуту ладненько давайте вместе =] может у кого еще...
C++ Закрасить участок шахматной доски Люди помогите плиз, у меня в С++ вообще башка не варит((( написать программу для выполнения следующей задачи (): Нужно решить такую задачу Дана шахматная доска размером N*N (1< N≤ 500), в... подробнее

Показать сообщение отдельно
Cerebrum
Сообщений: n/a

Опять хуки - C++

12.01.2010, 12:56. Просмотров 489. Ответов 0
Метки (Все метки)

Уважаемые господа программисты!
Стоит задача установить глобальный хук на клик мыши без dll (такое возможно если WH_JOURNALRECORD юзать вроде). поискал по форуму, слепил такой код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <windows.h>
#pragma hdrstop
#pragma argsused
HHOOK HookHandle;
 
//-----------вывод ошибки-------------------------------------------------------
void ErrorMessage(void)  //вывод подробной информации об ошибке
{  LPVOID lpMsgBuf;
   FormatMessage(
        FORMAT_MESSAGE_ALLOCATE_BUFFER |
        FORMAT_MESSAGE_FROM_SYSTEM |
        FORMAT_MESSAGE_IGNORE_INSERTS,
        NULL,
        GetLastError(),
        0,
        (LPTSTR)&lpMsgBuf,
        0,
        NULL
        );
   MessageBox(NULL, (LPCTSTR)lpMsgBuf, TEXT("Error"), MB_OK | MB_ICONERROR);
   LocalFree(lpMsgBuf);
}
 
//------------процедура-фильтр хука---------------------------------------------
LRESULT CALLBACK FilterFunc(int Code, WORD WParam, long LParam)
{if (Code == HC_ACTION)
              {switch (WParam)
                    {case WM_LBUTTONDOWN : MessageBox(0,"Нажата левая клавиша","Сообщение", MB_OK); break;
                     case WM_RBUTTONDOWN : MessageBox(0,"Нажата правая клавиша","Сообщение", MB_OK); break;
                    };
               };
 return CallNextHookEx(HookHandle, Code, WParam, LParam);
}
 
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
  HookHandle = SetWindowsHookEx(WH_JOURNALRECORD, reinterpret_cast<HOOKPROC>(FilterFunc), hInstance, NULL);
  if (HookHandle == NULL) ErrorMessage();
  return 0;
}
В итоге ошибок не выдается, но и не работает! Помогите разобраться - почему?
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru