CharData Record

      The character data structure of the API function KbdCharIn is shown below:

      ASCIICharCode (UCHAR)

        ASCII character code. The scan code received from the keyboard is translated to the ASCII character code.
      ScanCode (UCHAR)
        Code received from the keyboard. Scan code received from the keyboard is translated to the ASCII character code.
      Status (UCHAR)
        State of the keystroke event:

        Bits 7-6

          Has the following values:

          00

            Undefined
          01
            Final character; interim character flag is turned off
          10
            Interim character
          11
            Final character; interim character flag is turned on.
          Bit 5
            If set to 1, immediate conversion requested
          Bits 4-2
            Reserved
          Bit 1
            Has the following values:

          • Scan code is a character 1
              Scan code is not a character; instead it is an extended key code from the keyboard.
            Bit 0
              If set to 1, shift status returned without a character.
            Reserved (UCHAR)
              NLS shift status. Reserved; must be set to 0.
            ShiftKeyStat (USHORT)
              Shift key status. Values are:

              Bit 15

                SysReq key down
              Bit 14
                Caps Lock key down
              Bit 13
                NumLock key down
              Bit 12
                Scroll Lock key down
              Bit 11
                Right Alt key down
              Bit 10
                Right Ctrl key down
              Bit 9
                Left Alt key down
              Bit 8
                Left Ctrl key down
              Bit 7
                Insert on
              Bit 6
                Caps Lock on
              Bit 5
                NumLock on
              Bit 4
                Scroll Lock on
              Bit 3
                Either Alt key down
              Bit 2
                Either Ctrl key down
              Bit 1
                Left Shift key down
              Bit 0
                Right Shift key down
              Time (ULONG)
                Time stamp indicating when a key was pressed. It is specified in milliseconds from the time the system was started.


              [Back] [Next]