This call allows the process to set the code page used to translate key strokes received from the keyboard.

Syntax

KbdSetCp (Reserved, CodePageID, KbdHandle)

Parameters

;Reserved (USHORT) - input: Reserved and must be set to zero. ;CodePageID (USHORT) - input: CodePageID represents a code-page ID in the application's data area. The code-page ID must be equivalent to one of the code-page IDs specified on the CONFIG.SYS CODEPAGE = statement or 0000. If the code-page ID does not match one of the IDs on the CODEPAGE = statement, an error results. :The code-page word must have one of these code-page identifiers: ::{|class=“wikitable” !Identifier||Description

437
850
860
863
865

;KbdHandle (HKBD) - input : Default keyboard or the logical keyboard.

Return Code

;rc (USHORT) - return:Return code descriptions are: *0 NO_ERROR *439 ERROR_KBD_INVALID_HANDLE *445 ERROR_KBD_FOCUS_REQUIRED *447 ERROR_KBD_KEYBOARD_BUSY *448 ERROR_KBD_INVALID_CODEPAGE *464 ERROR_KBD_DETACHED *504 ERROR_KBD_EXTENDED_SG

Remarks

Keyboard code page support is not available without the DEVINFO=KBD statement in the CONFIG.SYS file. Refer to IBM Operating System/2 Standard Edition Version 1.2 Using Advanced Features for a complete description of CODEPAGE and DEVINFO.

Bindings

C

<PRE> #define INCL_KBD

USHORT rc = KbdSetCp(Reserved, CodePageID, KbdHandle);

USHORT Reserved; /* Reserved (must be zero) */ USHORT CodePageID; /* code page ID */ HKBD KbdHandle; /* Keyboard handle */

USHORT rc; /* return code */ </PRE>

MASM

<PRE> EXTRN KbdSetCp:FAR INCL_KBD EQU 1

PUSH WORD Reserved ;Reserved (must be zero) PUSH WORD CodePageID ;code page ID PUSH WORD KbdHandle ;Keyboard handle CALL KbdSetCp

Returns WORD </PRE>

Kbd