Compartilhar via


Input Languages

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Diferentemente layout o dispositivo, o idioma de entrada não é específico do hardware. O idioma de entrada contém o Virtual código de chave - código de chave para Unicode conversões e virtual - para conversões codificar digitalizar XT. O protocolo RDP (protocolo de área de trabalho remota) requer o Virtual-código de chave para mapeamento codificar digitalizar XT. Para obter mais informações, consulte Suporte de protocolo da Área de Trabalho Remoto.

A palavra baixa de uma entrada localidade identifica um idioma de entrada.

Descreve o relacionamento complexo entre as chaves modificador e o Virtual InputLang.h-código de chave para conversão Unicode. Layout Manager mapeia o atual modificador teclas, como SHIFT, CTRL e assim por diante, para um índice para o Virtual-código de chave para Unicode tabelas. Em seguida, ele procura as tabelas para a chave virtual e usa o índice das chaves modificador para determinar seu valor Unicode.

O seguinte exemplo de código mostra o idioma de entrada estruturas dados; Esses são declaradas em InputLang.h.

typedef struct _INPUT_LANGUAGE {
  DWORD dwSize;
  DWORD dwType;
  DWORD dwSubType;

  // Modifier keys
  const MODIFIERS *pCharModifiers;

  // Optional shift key table
  const VK_TO_SHIFT *pVkToShiftState;

  // Optional toggle key table
  const VK_TO_SHIFT *pVkToToggledState;

  // Virtual key to Unicode
  const VK_TO_WCHAR_TABLE *pVkToWcharTable;//ptr to tbl of ptrs to tbl

  // Dead keys
  const DEADKEY *pDeadKey;

  // Virtual key to XT scan code
  const VKEY_TO_SCANCODE *pVkToScanCodeTable;

  // Locale-specific special processing    
  DWORD fLocaleFlags;

  // Ligatures (Not currently supported. Here for compatibility only.)
  BYTE nLgMax;
  BYTE cbLgEntry;
  const LIGATURE1 *pLigature;

  BYTE bcFnKeys;
} INPUT_LANGUAGE, *PINPUT_LANGUAGE;

typedef BOOL (*PFN_INPUT_LANGUAGE_ENTRY)(PINPUT_LANGUAGE pInputLanguage);

See Also

Concepts

Layout Manager
Input Language Data
Keyboard Identification