Share via


PFN_KEYBD_DRIVER_GET_INFO (Windows Embedded CE 6.0)

1/6/2010

The function based on this prototype retrieves information about the keyboard and the driver.

Syntax

typedef BOOL (*PFN_KEYBD_DRIVER_GET_INFO)(
  INT iKeybdId,
  INT iIndex,
  LPVOID lpOutput
);

Parameters

Parameter Description

iKeybdId

[in] Ignored.

iIndex

[in] Identifier of the information to retrieve.

The following table shows the identifiers and their descriptions.

Identifier Description
KBDI_VKEY_TO_UNICODE_INFO_IDIf iIndex is KBDI_VKEY_TO_UNICODE_INFO_ID, lpOutput must point to a KBDI_VKEY_TO_UNICODE_INFO structure.
KBDI_AUTOREPEAT_INFO_IDReturns the auto-repeat settings that apply to all keyboards. If iIndex is KBDI_AUTOREPEAT_INFO_ID, lpOutput must point to a KBDI_AUTOREPEAT_INFO structure.
KBDI_AUTOREPEAT_SELECTIONS_INFO_IDReturns various minimums and maximums related to the auto-repeat rate. If iIndex is KBDI_AUTOREPEAT_SELECTIONS_INFO_ID, lpOutput must point to an array of the following INT32 values:
  • Minimum delay before starting auto-repeat, in milliseconds.
  • Maximum delay before starting auto-repeat, in milliseconds.
  • Minimum auto-repeat rate, in keys per second.
  • Maximum auto-repeat rate, in keys per second.

lpOutput

[out] Pointer to the output buffer. The size of the buffer that must be available at this address depends on iIndex.

Return Value

TRUE indicates success. FALSE indicates failure. To obtain extended error information, call GetLastError.

Remarks

This function must be re-entrant because the Graphics, Windowing, and Events Subsystem (GWES) exposes it through the KeybdGetDeviceInfo function and multiple threads can call it.

In Windows CE .NET 4.1 and earlier, the iIndex parameter was used to return the size necessary for the ToUnicodeState parameter and the maximum number of Unicode characters that a single virtual-key code can generate. Layout Manager does not need a ToUnicodeState parameter and it can return a maximum of two characters for a single virtual-key code, including dead keys. The ToUnicodeState parameter was formerly used by the ALT + numeric keypad remapping, but in Windows CE .NET 4.2 and later, Layout Manager uses a static variable for this.

Requirements

Header keybddr.h
Library layoutmanager.lib
Windows Embedded CE Windows CE 1.0 and later

See Also

Reference

Keyboard Driver MDD Functions
KBDI_AUTOREPEAT_INFO
KBDI_VKEY_TO_UNICODE_INFO

Other Resources

Shell, GWES, and User Interface
KeybdGetDeviceInfo