кусок DLL хука клавиатуры. как ловить нажатие ctrl + c, ctrl + v?
Здравствуйте! Как записать при нажатии вышеупомянутых сочетаний в строку CurStrW := 'ctrl +' + символ? Сейчас пишется просто "квадратик". {
MyHKL:=GetKeyboardLayout(GetWindowThreadProcessId(FocusWnd,nil));
ScanCode:=MapVirtualKeyEx(VirtualKey, 0, MyHKL);
GetKeyboardState(KS);
Count:=ToUnicodeEx(VirtualKey, ScanCode, @KS, @WBuff, SizeOf(WBuff),0,MyHKL);
MyHKL:=0;
if (Count=1)and(Ord(WBuff[0])<>13)and(Ord(WBuff[0])<>8)
and(Ord(WBuff[0])<>27)
then CurStrW:=WBuff
else
begin
GetKeyNameTextW(KeyStroke, szKeyNameW, sizeof(szKeyNameW));
CurStrW:=szKeyNameW;
end;
if (IsShift<>IsCapsLock) then
CurStrW:=WideUpperCase(CurStrW);
l:=length(CurStrW);
if (l>1) then
begin
Insert('[', CurStrW, 1);
Insert(']', CurStrW, length(CurStrW)+1);
end;
}
Источник: Stack Overflow на русском