GetKeyboardType function

Retrieves information about the current keyboard.

Syntax

int GetKeyboardType(
  int nTypeFlag
);

Parameters

nTypeFlag

Type: int

The type of keyboard information to be retrieved. This parameter can be one of the following values.

Value Meaning
0
Keyboard type
1
Keyboard subtype
2
The number of function keys on the keyboard

Return Value

Type: int

If the function succeeds, the return value specifies the requested information.

If the function fails and nTypeFlag is not one, the return value is zero; zero is a valid return value when nTypeFlag is one (keyboard subtype). To get extended error information, call GetLastError.

Remarks

The type may be one of the following values.

Value Meaning
1 IBM PC/XT or compatible (83-key) keyboard
2 Olivetti "ICO" (102-key) keyboard
3 IBM PC/AT (84-key) or similar keyboard
4 IBM enhanced (101- or 102-key) keyboard
5 Nokia 1050 and similar keyboards
6 Nokia 9140 and similar keyboards
7 Japanese keyboard
 

The subtype is an original equipment manufacturer (OEM)-dependent value.

The application can also determine the number of function keys on a keyboard from the keyboard type. Following are the number of function keys for each keyboard type.

Type Number of function keys
1 10
2 12 (sometimes 18)
3 10
4 12
5 10
6 24
7 Hardware dependent and specified by the OEM
 

When a single USB keyboard is connected to the computer, this function returns the code 81.

Requirements

   
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header winuser.h (include Windows.h)
Library User32.lib
DLL User32.dll

See Also

Keyboard Input Functions