88 / 83 / 21
Регистрация: 08.08.2012
Сообщений: 737
1

Не работает глобальный хук находящийся в dll

05.03.2015, 20:27. Показов 751. Ответов 2
Метки нет (Все метки)

Добрый вечер!
Нужен глобальный хук подгружаемый из dll вот что имею:

hookwin.h
C++ (Qt)
1
2
3
4
5
6
7
#include "hookwin_global.h"
#include <windows.h>
 
extern "C"{
    LRESULT CALLBACK Hook(int nCode, WPARAM wParam, LPARAM lParam);
    int func(int);
}
hookwin.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include "hookwin.h"
#include <QDebug>
 
 
LRESULT CALLBACK Hook(int nCode, WPARAM wParam, LPARAM lParam)
{
    qDebug() << "Hook";
}
 
int func(int i)
{
    return i*i;
}
main.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
 
 
    QLibrary lib("hookwin");
 
    typedef LRESULT CALLBACK (*Ptr1)(int, WPARAM, LPARAM);
    typedef int (*Ptr2) (int);
 
    Ptr1 hook = (Ptr1)(lib.resolve("Hook"));
    Ptr2 func = (Ptr2)(lib.resolve("func"));
 
    qDebug() << func(5);
 
    SetWindowsHookEx(WH_KEYBOARD_LL, hook, qWinAppInst(), NULL);
   
 
    return a.exec();
}
в длл добавил func для проверки. все правильно выводиться = 25, а вот хук вообще не вызывается, ни для каких типов хуков. 2 дня не знаю уже что делать. Можно создавать локальные хуки без длл, но они работают только для перехвата мыши и клавиатуры, а это не то что мне надо
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.03.2015, 20:27
Ответы с готовыми решениями:

KeyboardProc, глобальный хук клавиатуры, dll
Написал dll для установки хука на клаву, по книге &quot;Нестандартные приемы программирования на Delphi...

Глобальный хук на клавиатуру и мышь без dll
Все пытаюсь определить время простоя системы, ни один из вариантов не работате на 64 битной...

Не работает глобальный хук
Здравствуйте. Накопал на codeproject код глобального клавиатурного хука, встроил его в свою...

Хук на клавиатуру без своей DLL не запускается на ХР, но на 7 работает отлично
Пишу глобальный хук без написания своего длл( читал, что WH_KEYBOARD_LL это позволяет, да и у меня...

2
Эксперт С++
8382 / 6144 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
05.03.2015, 20:47 2
Hook в qt
0
88 / 83 / 21
Регистрация: 08.08.2012
Сообщений: 737
05.03.2015, 22:52  [ТС] 3
Avazart,
взял пример из предоставленной вами темы, хук на клавиатуру, мышу работает, но стоит подставить WH_CALLWNDPROC в SetWindowsHookEx, вместо WH_KEYBOARD_LL как хук перестает реагировать.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.03.2015, 22:52
Помогаю со студенческими работами здесь

Глобальный хук
Всем доброго времени суток! Помогите написать глобальный хук и функцию для него, чтобы перехватывал...

глобальный хук
помогите с программой(с какой стороны начинать) : нужно что бы работала как глобальный хук - в...

Глобальный хук мыши
Подскажите, пожалуйста, почему при таком способе перехвата событий мыши, курсор(не самой игры, а...

Глобальный хук активности
Здравствуйте, помогите мне пожалуйста, нужно создать программу(которая в последствии станет...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru