unhookwindowshookex

    9熱度

    1回答

    不幸的是,MSDN不夠清楚。我正在編寫一個使用全局鉤子的程序,而且我擔心如果程序異常終止(崩潰,被用戶殺死等)會發生什麼。 當進程終止時,Windows是否自動解除由進程安裝的全局鉤子? 如果沒有,是否可以在另一個進程中調用UnhookWindowsHookEx()來釋放鉤子? (如果它檢測到安裝程序進程已死亡,我正在考慮在掛鉤線程中執行此操作。) 如果答案爲否,並且不是,則在全局掛鉤處於活動狀態

    4熱度

    2回答

    我有一個DLL注入其他進程使用SetWindowsHookEx。在DLL內部,我通過調用GetModuleHandleEx來增加模塊的參考計數器,這樣我就可以控制模塊何時卸載。 此時,來自這兩個API調用的模塊引用計數「應該是2」。當調用進程關閉時,它調用UnhookWindowsHookEx,將引用計數遞減爲1.DLL有一個線程等待幾件事情,其中​​一個是調用SetWindowsHookEx的進