This is an old revision of the document!
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
0 | |
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>