笔记本m坏了,所以找个不常用的键当转移键,按下转移键时将其拦截,模拟按下我们需要的按键。我这里用了右alt做转移键:
//
// Created by 20557 on 2023/2/27.
//
#include <windows.h>
#include <winuser.h>
#include <iostream>
bool flag = TRUE;
LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam) {
if (nCode == HC_ACTION) {
KBDLLHOOKSTRUCT* p = (KBDLLHOOKSTRUCT*)lParam;
if (p->vkCode == 165) { //右边的alt是165
if (flag){
keybd_event('M', 0, 0, 0); // Press the 'A' key
keybd_event('M', 0, KEYEVENTF_KEYUP, 0);
flag = !flag;
}else{
flag = TRUE;
}
return 1;
}
}
return CallNextHookEx(NULL, nCode, wParam, lParam);
}
int main() {
HHOOK hook = SetWindowsHookEx(WH_KEYBOARD_LL, KeyboardProc, GetModuleHandle(NULL), 0);
MSG msg;
while (GetMessage(&msg, NULL, 0, 0)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
UnhookWindowsHookEx(hook);
return 0;
}
当笔记本的M键损坏时,可以通过编程方式实现功能替换。文章使用C++和WindowsAPI,创建了一个低级键盘钩子(WH_KEYBOARD_LL),在检测到右Alt(vkCode165)被按下时,模拟按下M键,从而达到转移键功能。
899

被折叠的 条评论
为什么被折叠?



