en:docs:fapi:kbdregister

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
en:docs:fapi:kbdregister [2021/10/06 13:18] – created prokusheven:docs:fapi:kbdregister [2021/11/04 13:24] (current) prokushev
Line 1: Line 1:
 +{{page>en:templates:fapiint}}
 +
 +====== KbdRegister ======
 +
 This call registers a keyboard subsystem within a session. This call registers a keyboard subsystem within a session.
  
-==Syntax==+===== Syntax ===== 
 +<code c>
  KbdRegister (ModuleName, EntryPoint, FunctionMask)  KbdRegister (ModuleName, EntryPoint, FunctionMask)
 +</code>
 +===== Parameters =====
  
-==Parameters== +  * ModuleName (PSZ) - input : Address of the dynamic link module name. Maximum length is 9 bytes (including ASCIIZ terminator). 
-;ModuleName (PSZ) - input : Address of the dynamic link module name. Maximum length is 9 bytes (including ASCIIZ terminator). +  EntryPoint (PSZ) - input : Address of the dynamic link entry point name of a routine that receives control when any of the registered functions are called. Maximum length is 33 bytes (including ASCIIZ terminator). 
-;EntryPoint (PSZ) - input : Address of the dynamic link entry point name of a routine that receives control when any of the registered functions are called. Maximum length is 33 bytes (including ASCIIZ terminator). +  FunctionMask (ULONG) - input : A bit mask where each bit identifies a keyboard function being registered. The bit values are:
-;FunctionMask (ULONG) - input : A bit mask where each bit identifies a keyboard function being registered. The bit values are: +
- Bit   Description +
- 31-15 Reserved, must be set to zero. +
- 14    KbdGetHWId +
- 13    KbdSetCustXt +
- 12    KbdXlate +
- 11    KbdSetCp +
- 10    KbdGetCp +
-     KbdFreeFocus +
-     KbdGetFocus +
-     KbdClose +
-     KbdOpen  +
-     KbdStringIn +
-     KbdSetStatus +
-     KbdGetStatus +
-     KbdFlushBuffer +
-     KbdPeek +
-     KbdCharIn+
  
-==Return Code== +^ Bit ^ Description ^ 
-;rc (USHORT) - return:Return code descriptions are: +| 31-15 | Reserved, must be set to zero | 
-* 0  NO_ERROR +| 14 | KbdGetHWId | 
-* 408 ERROR_KBD_INVALID_ASCIIZ  +| 13 | KbdSetCustXt | 
-* 409 ERROR_KBD_INVALID_MASK +| 12 | KbdXlate | 
-* 410 ERROR_KBD_REGISTER +| 11 | KbdSetCp | 
-* 464 ERROR_KBD_DETACHED +| 10 | KbdGetCp | 
-* 504 ERROR_KBD_EXTENDED_SG+| 9 | KbdFreeFocus | 
 +| 8 | KbdGetFocus | 
 +| 7 | KbdClose | 
 +| 6 | KbdOpen | 
 +| 5 | KbdStringIn | 
 +| 4 | KbdSetStatus | 
 +| 3 | KbdGetStatus | 
 +| 2 | KbdFlushBuffer | 
 +| 1 | KbdPeek | 
 +| 0 | KbdCharIn | 
 + 
 +===== Return Code ===== 
 + 
 +rc (USHORT) - return:Return code descriptions are: 
 + 
 +  * 0  NO_ERROR 
 +  * 408 ERROR_KBD_INVALID_ASCIIZ  
 +  * 409 ERROR_KBD_INVALID_MASK 
 +  * 410 ERROR_KBD_REGISTER 
 +  * 464 ERROR_KBD_DETACHED 
 +  * 504 ERROR_KBD_EXTENDED_SG 
 + 
 +===== Remarks =====
  
-==Remarks== 
 There can be only one KbdRegister call outstanding for each session without an intervening [[KbdDeRegister]]. KbdDeRegister must be issued by the same process that issued the KbdRegister. There can be only one KbdRegister call outstanding for each session without an intervening [[KbdDeRegister]]. KbdDeRegister must be issued by the same process that issued the KbdRegister.
  
-==Bindings== +===== Bindings ===== 
-===C=== + 
-<PRE>+====C==== 
 +<code c>
 #define INCL_KBD #define INCL_KBD
  
Line 50: Line 61:
  
 USHORT  rc;            /* return code */ USHORT  rc;            /* return code */
-</PRE>+</code>
  
-===MASM=== +====MASM==== 
-<PRE>+<code asm>
 EXTRN  KbdRegister:FAR EXTRN  KbdRegister:FAR
 INCL_KBD            EQU 1 INCL_KBD            EQU 1
Line 63: Line 74:
  
 Returns WORD Returns WORD
-</PRE>+</code>
  
-[[Category:Kbd]]+{{page>en:templates:fapi}}