先上图
效果图:
代码框架图:
代码实现大致分为两部分:
1.core audio API实现系统音量的大小控制与静音,由于是封装好的函数,操作起来十分简单。
2.全局钩子。因为要实现监听按键,仅适用线程钩子监听某一个线程是不够的。该部分有难度。
写了四个类:基类hook,子类PublicHook(全局钩子)和PrivateHook(私有钩子),以及调取委托的KeyboardHookStruct(其实我也不太懂(╯﹏╰))
基类hook:
两个子类仅有构造函数继承父类,和重写SetWindowsHookEx:
PrivateHook: hHook = SetWindows