Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 4 của 4
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Đối số thứ 3 của hàm SetWindowHookEx (HINSTANCE hMod) nghĩa là gì?

    Hàm
    HHOOK WINAPI SetWindowsHookEx(
    __in int idHook,
    __in HOOKPROC lpfn,
    __in HINSTANCE hMod,
    __in DWORD dwThreadId
    );

    Có đối số thứ 3:

    hMod [in]

    Type: HINSTANCE

    A handle to the DLL containing the hook procedure pointed to by the lpfn parameter. The hMod parameter must be set to NULL if the dwThreadId parameter specifies a thread created by the current process and if the hook procedure is within the code associated with the current process.


    Nhưng em đọc mãi mà vẫn không hiểu được đối số thứ 3 này giữ vai trò là gì? Mong anh chị nào biết giải thích dùm!

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi tamthientai
    Hàm
    HHOOK WINAPI SetWindowsHookEx(
    __in int idHook,
    __in HOOKPROC lpfn,
    __in HINSTANCE hMod,
    __in DWORD dwThreadId
    );

    Có đối số thứ 3:

    hMod [in]

    Type: HINSTANCE

    A handle to the DLL containing the hook procedure pointed to by the lpfn parameter. The hMod parameter must be set to NULL if the dwThreadId parameter specifies a thread created by the current process and if the hook procedure is within the code associated with the current process.


    Nhưng em đọc mãi mà vẫn không hiểu được đối số thứ 3 này giữ vai trò là gì? Mong anh chị nào biết giải thích dùm!
    Thì dòng mô tả trên nó nói rồi đó bạn,đó là handle của module chứa hàm lọc,thường là handle của DLL chứa hàm lọc.Nếu set NULL thì nó tìm hàm lọc từ chính chương trình của bạn.

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    làm sao để bắt được ctrl-v dùng hook ? các bạn giúp mình với .

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi lttq
    Bạn check xem đang bấm Ctrl không và xem thử nút bấm thứ 2 có là V không(mã ASCII 86).

    Mã:
    LRESULT CALLBACK keyHandler(int nCode, WPARAM wParam, LPARAM lParam) {    if(nCode == HC_ACTION) {        if(GetKeyState(VK_CONTROL) && ((KBDLLHOOKSTRUCT *) lParam)->vkCode == 86)            cout << "vua bam Ctr-V" << endl;    }    return CallNextHookEx(hookHandle, nCode, wParam, lParam);}
    e chưa thử, nhưng e nghĩ bắt bằng WH_GETMESSAGE thì nên kiểm tra WM_KEYDOWN thì tốt hơn [IMG]images/smilies/biggrin.png[/IMG] cái GetKeyState nhảy loạn lắm @@

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •