Use something like this:
Code:
// this function is from "TntSystem.pas" fron TNT Unicode controls.
function KeyUnicode(CharCode: Word): WideChar;
var
  AChar: AnsiChar;
begin
  if CharCode <= Word&#40;High&#40;AnsiChar&#41;&#41; then begin
    AChar &#58;= AnsiChar&#40;CharCode&#41;;
    MultiByteToWideChar&#40;KeyboardCodePage, MB_USEGLYPHCHARS, @AChar, 1, @Result, 1&#41;;
  end else
    Result &#58;= WideChar&#40;CharCode&#41;;
end;

procedure TForm1.FormCreate&#40;Sender&#58; TObject&#41;;
begin
 Application.OnMessage&#58;= MyMessage;
end;

procedure TForm1.MyMessage&#40;var Msg&#58; TMsg; var Handled&#58; Boolean&#41;;
var
 WideCh&#58; WideChar;
begin
 if &#40;Msg.message = WM_CHAR&#41; then
  begin
   WideCh&#58;= KeyUnicode&#40;Msg.wParam&#41;;
   // Use WideCh for some purpose
  end;
end;