#include <windows.h> #include <stdio.h> #define WM_ALERTE (WM_USER+3) HINSTANCE thismod; HINSTANCE hInstance; HHOOK hhk; HWND hDlg; HWND Dlg; char g_val[256]; char val[256]; int debut; BOOL WINAPI DllMain(HINSTANCE hDll, DWORD dwReason, LPVOID Reserved) { if(dwReason = = DLL_PROCESS_ATTACH) thismod = hDll; return 1; } LRESULT CALLBACK kbdWinAmp(int nCode, WPARAM wParam, LPARAM lParam) { if(nCode >= 0) { //quand une fenetre est activé if(nCode == HCBT_ACTIVATE) //ACTIVATE { if (hDlg = FindWindow(g_val,NULL)) { if (Dlg = FindWindow(NULL,"Protection activée")) { PostMessage(Dlg, WM_ALERTE, 0, 0); } } } } return CallNextHookEx(hhk, nCode, wParam, lParam); } extern "C" __declspec(dllexport) int __stdcall Intercepte(char val[256]) { if(!hhk) { sprintf(g_val,"%s",val); hhk = SetWindowsHookEx(WH_CBT, kbdWinAmp, thismod, 0); } return (int) hhk; } extern "C" __declspec(dllexport) void __stdcall FinIntercepte() { if(hhk) { UnhookWindowsHookEx(hhk); hhk = 0; } } Par contre là ça marche : <table border=0 cellspacing=0 cellpadding=4 bgcolor=#E0E0E0><tr><td class=code> strcpy(g_val,"Outlook Express Browser Class"); if (hDlg = FindWindow(g_val,NULL));
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question