global hcbt_active hook
От: fromrus  
Дата: 16.09.08 17:25
Оценка: 2 (1)
здравствуйте!Написал хук,ток он не рабочий-почму?Прошу помощи у знатоков(хук блокирует активацию открытых окон)
длл сделана в ВС2008
HHOOK hook;
HINSTANCE hInstance;
extern "C" __declspec(dllexport) LRESULT CALLBACK HookProc(int code,WPARAM wParav,LPARAM lParam);
  
extern "C" __declspec(dllexport) LRESULT CALLBACK HookProc(int code,WPARAM wParam,LPARAM lParam){
if (code<0)
    return CallNextHookEx(hook,code,wParam,lParam);
if(code==HCBT_ACTIVATE)
return 1;
CallNextHookEx(hook,code,wParam,lParam);
}

далее в борланде в обработчике кнопки пишу:

static HINSTANCE hInst;
static HHOOK hook;
HOOKPROC hookProc;
.....
 void __fastcall TForm1::Button1Click(TObject *Sender)
{
         hInst=LoadLibraryA("HookDll.dll") ;
         if(hInst==NULL)
         {
        ShowMessage("Cannot load the library");
         }
      hookProc=(HOOKPROC)GetProcAddress(hInst,"HookProc");
      if(hookProc==NULL)
      {
      ShowMessage("Cannot load the function");
      }
      hook=SetWindowsHookEx(WH_CBT,(HOOKPROC)hookProc,hInst,0);
            Form1->Button1->Enabled=false;
     }

выяснилось что ХУКПРОК=нулу...почму не наю...


17.09.08 13:38: Перенесено модератором из 'C/C++' — Кодт
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.