Remote Desktop Protocol Support
9/8/2008
Se Layout Manager entrada aponta para PFN_LAYOUT_MGR_GET_KEYBOARD_TYPE e PFN_LAYOUT_MGR_GET_KEYBOARD_LAYOUT_NAME Não existem, os valores em determinadas chaves Registro são consultados e seus valores são retornadas em vez disso.
O seguinte exemplo chave do Registro mostra as chaves Registro para configurar a suporte RDP.
[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\KEYBD]
"Keyboard Type"=dword:<type>
"Keyboard SubType"=dword:<subtype>
"Keyboard Function Keys"=dword:<function keys>
"Keyboard Layout"="<layout>"
Para definir esses valores para a localidade desejada, defina a variável DEFINE_KEYBOARD_TYPE em Platform.reg antes incluindo Keybd.reg. O seguinte amostra de código mostra como definir a DEFINE_KEYBOARD_TYPE em Platform.reg antes incluindo Keybd.reg.
#define DEFINE_KEYBOARD_TYPE
#include "$(DRIVERS_DIR)\keybd\keybd.reg"
This will bring in the proper values for the current LOCALE, if it is supported. Logic in Keybd.reg sets these values. The following registry example shows this logic.
; Define this variable in platform.reg if your keyboard driver does not
; report its type information.
#if defined DEFINE_KEYBOARD_TYPE
#if $(LOCALE)==0411
; Japanese keyboard layout
"Keyboard Type"=dword:7
"Keyboard SubType"=dword:2
"Keyboard Function Keys"=dword:c
"Keyboard Layout"="00000411"
#elif $(LOCALE)==0412
; Korean keyboard layout
"Keyboard Type"=dword:8
"Keyboard SubType"=dword:3
"Keyboard Function Keys"=dword:c
"Keyboard Layout"="00000412"
#else
; Default to US keyboard layout
"Keyboard Type"=dword:4
"Keyboard SubType"=dword:0
"Keyboard Function Keys"=dword:c
"Keyboard Layout"="00000409"
#endif
#endif ; DEFINE_KEYBOARD_TYPE