Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Define o layout de teclado especificado ou um serviço de texto como o item de entrada padrão do usuário atual.
Sintaxe
BOOL CALLBACK SetDefaultLayoutOrTip(
_In_ LPCWSTR psz,
_In_ LPCWSTR psz DWORD dwFlags
);
Parâmetros
-
psz [in]
-
Uma cadeia de caracteres que representa uma lista de layout de teclado ou uma lista de perfis de serviços de texto.
-
dwFlags [in]
-
Um campo de bits que especifica os sinalizadores a seguir.
Observação
Os identificadores a seguir não são definidos em um arquivo de cabeçalho público. Você deve usar o valor hexadecimal ou #define os identificadores. Por exemplo, para usar SDLOT_NOAPPLYTOCURRENTSESSION você deve incluir #define SDLOT_NOAPPLYTOCURRENTSESSION 0x00000001 em seu código.
Valor Significado - SDLOT_NOAPPLYTOCURRENTSESSION
- 0x00000001
Armazena a configuração no registro, mas não atualiza a configuração de teclado de runtime da sessão atual. Se o caminho alternativo do Registro for definido em SetDefaultLayoutOrTipUserReg, este sinalizador deverá ser definido. - SDLOT_APPLYTOCURRENTTHREAD
- 0x00000002
Aplica a configuração imediatamente no thread atual.
Valor retornado
| Código de retorno | Descrição |
|---|---|
|
A função foi bem-sucedida. |
|
Ocorreu um erro não especificado. |
Comentários
O formato de cadeia de caracteres da lista de layout é:
<LangID 1>:<KLID 1>;[...<LangID N>:<KLID N>
O formato de cadeia de caracteres da lista de perfis do serviço de texto é:
<LangID 1>:{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx};
Veja a seguir um exemplo de um valor para o parâmetro psz:
"0x0407:0x00000407"
"0x0407:0x00000407;0x040C:0x0000040C"
"0x0407:0x00000407;0x0412:{A028AE76-01B1-46C2-99C4-ACD9858AE02F}{B5FE1F02-D5F2-4445-9C03-C568F23C99A1};0x040C:0x0000040C"
Exemplos
Não há nenhuma biblioteca de importação disponível que defina essa função, portanto, é necessário obter um ponteiro para essa função usando LoadLibrary e GetProcAddress. O exemplo a seguir demonstra como obter um ponteiro para essa função.
Observação
Usar LoadLibrary incorretamente pode comprometer a segurança do aplicativo carregando a DLL errada. Confira Ordem de pesquisa da biblioteca de vínculo dinâmico para obter informações sobre como carregar corretamente DLLs com diferentes versões do Microsoft Windows.
typedef HRESULT (WINAPI *PTF_ SETDEFAULTLAYOUTORTIP)(LPCWSTR psz);
HMODULE hInputDLL = LoadLibrary(TEXT("input.dll"));
BOOL bRet = FALSE;
if(hInputDLL == NULL)
{
// Error loading module; fail as securely as possible.
}
else
{
PTF_ SETDEFAULTLAYOUTORTIP pfnSetDefaultLayoutOrTip;
pfnSetDefaultLayoutOrTip = (PTF_ SETDEFAULTLAYOUTORTIP)GetProcAddress(hInputDLL, "SetDefaultLayoutOrTip");
if(pfnSetDefaultLayoutOrTip)
{
bRet = (*pfnSetDefaultLayoutOrTip)(psz);
}
FreeLibrary(hInputDLL);
}
Requisitos
| Requisito | Valor |
|---|---|
| Cliente mínimo com suporte |
Windows Vista [somente aplicativos da área de trabalho] |
| Servidor mínimo com suporte |
Windows Server 2008 [somente aplicativos da área de trabalho] |
| DLL |
|