To jiangxiancheng
看看這樣行不行
function KeyboardHookHandler(iCode: Integer;
wParam: WPARAM;
lParam: LPARAM): LRESULT; stdcall; export;
const
_KeyPressMask = $80000000;
begin
Result := 0;
If iCode < 0 Then
begin
Result := CallNextHookEx(hNextHookProc, iCode, wParam, lParam);
Exit;
end;
// 偵測 A 鍵
if ((lParam and _KeyPressMask) = 0) and
(wParam = Ord('A')) then
begin
Result := 1; // 攔截下來
// 如果你只是想換一換字符, 可以這樣
keybd_event(Ord('B'), 0, 0, 0);
keybd_event(Ord('B'), 0, KEYEVENTF_KEYUP, 0);
// 如果你想所有的視窗都接收到這個字符
// PostMessage(HWND_BROADCAST, WM_CHAR, Ord('B'), lParam);
end;
end;