HOOk快捷键

#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include "消息钩子dll.h"

#define KEYDOWN(vk_code) ((GetAsyncKeyState(vk_code)&0x8000)?1:0)


BOOL g_bHide = TRUE;
HHOOK  g_Hook = 0;
LRESULT CALLBACK KeyboardProc(
    int code,           // 消息类型
    WPARAM wParam,      // 虚拟码
    LPARAM lParam) 
{      // 按键信息
    // 判断是否wParam与lParam都有键盘消息,是的话则执行打印操作
    if (code == HC_ACTION)
    {
        HWND hFindWin = FindWindow(NULL, L"windows程序分析工具");
        if (KEYDOWN(VK_MENU) && KEYDOWN(0x41))
        {
            ShowWindow(hFindWin, g_bHide?SW_HIDE : SW_SHOW);
            g_bHide = !g_bHide;
        }
    }
    return CallNextHookEx(g_Hook, code, wParam, lParam);
}


extern "C" _declspec(dllexport)  BOOL    InstallHook()
{
    if (g_Hook == 0)
    {
        g_Hook =
            SetWindowsHookEx(WH_KEYBOARD,
            KeyboardProc,
            GetModuleHandleA("01 消息钩子dll.dll"),
            0);
        return TRUE;
    }
    return FALSE;
}

extern "C" _declspec(dllexport) BOOL UnstallHook()
{
    if (g_Hook != 0)
    {
        UnhookWindowsHookEx(g_Hook);
        g_Hook = 0;
        return TRUE;
    }
    return FALSE;
}

 

转载于:https://www.cnblogs.com/Alyoyojie/p/5369722.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值