Wyłapywanie operacji kopij/wklej

0

Witam. Próbuję wyłapywać operację kopiuj/wklej. Myślałem, że najlepszym rozwiązaniem będzie założenie hook'a i wyłapywanie wiadomości: WM_COPY i WM_PASTE Za ustawienie hook'a odpowiedzialny jest fragment kodu:

    hookClipboard = SetWindowsHookEx(WH_GETMESSAGE, hookClipboardFunction, 0, 0);
    if(hookClipboard) cout << "jest Hook" << endl;
    else cout << "Nie ma hooka" << endl;
    MSG message;
    while(GetMessage(&message, 0, 0, 0) != 0)
    {
        TranslateMessage(&message);
        DispatchMessage(&message);
    }

Funkcja hookClipboardFunction :

LRESULT CALLBACK hookClipboardFunction(int nCode, WPARAM wParam, LPARAM lParam)
{
    if(nCode == HC_ACTION)
    {
        (...)
    }

    return CallNextHookEx(hookClipboard, nCode, wParam, lParam);
}

Problem w tym, że nie potrafię ustawić tak hook'a aby działał. Za każdym razem otrzymuję Nie ma hooka :(

0

http://msdn.microsoft.com/en-us/library/windows/desktop/ms644990(v=vs.85).aspx

lpfn [in]
Type: HOOKPROC
A pointer to the hook procedure. If the dwThreadId parameter is zero or specifies the identifier of a thread created by a different process, the lpfn parameter must point to a hook procedure in a DLL. Otherwise, lpfn can point to a hook procedure in the code associated with the current process.

Procedura obsługi komunikatów powinna znajdować się w dll'ce jeżeli ostatni parametr == 0.

1 użytkowników online, w tym zalogowanych: 0, gości: 1