if wParam<65 then
    begin
      if ShiftDown then
        C:=Chr(wParam-16)
      else
        C:=chr(wParam);
    end else
    begin
      if wParam in[96..105] then
        C:=Chr(wParam-48){数字键盘}
      else if ShiftDown xor CapsDown then
        C:=Chr(wParam)
      else
        C:=Chr(wParam+32);
    end;
    Seek(F,FileSize(F));
    Write(F,C);