Share via


Função InstallLayoutOrTip

Habilita os layouts de teclado ou serviços de texto especificados.

Sintaxe

BOOL CALLBACK InstallLayoutOrTip(
  _In_ LPCWSTR psz,
  _In_ DWORD   dwFlags
);

Parâmetros

psz [in]

Uma cadeia de caracteres que representa a lista de layout do teclado ou a lista de perfis de serviços de texto.

dwFlags [in]

Um bitfield que especifica os seguintes sinalizadores:

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 ILOT_UNINSTALL você deve incluir #define ILOT_UNINSTALL 0x00000001 em seu código.

Valor Significado
ILOT_UNINSTALL
0x00000001
O mesmo que ILOT_DISABLED.
ILOT_DEFPROFILE
0x00000002
Define o layout ou a dica especificado como um item padrão.
ILOT_DEFUSER4
0x00000004
Altera a configuração de . Padrão.
ILOT_SYSLOCALE
0x00000008
Não utilizado.
ILOT_NOLOCALETOENUMERATE
0x00000010
Não utilizado.
ILOT_NOAPPLYTOCURRENTSESSION
0x00000020
A configuração é salva, mas não é aplicada à sessão atual.
ILOT_CLEANINSTALL
0x00000040
Desabilita todos os layouts de teclado e serviços de texto atuais.
ILOT_DISABLED
0x00000080
Desabilita o layout de teclado e o serviço de texto especificados.

Valor retornado

Código de retorno Descrição
TRUE
A função foi bem-sucedida.
FALSE
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-xxxx-xxxxxx}{xxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxxxx};

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.

Observação

Usar LoadLibrary incorretamente pode comprometer a segurança do aplicativo carregando a DLL errada. Consulte a Ordem de Pesquisa da Biblioteca de Link Dinâmico para obter informações sobre como carregar corretamente DLLs com diferentes versões do Microsoft Windows.

typedef HRESULT (WINAPI *PTF_ INSTALLLAYOUTORTIP)(LPCWSTR psz, DWORD dwFlasg);

HMODULE hInputDLL = LoadLibrary(TEXT("input.dll"));
BOOL bRet = FALSE;

if(hInputDLL == NULL)
{
    // Error loading module; fail as securely as possible. 
}
else
{
    PTF_ INSTALLLAYOUTORTIP pfnInstallLayoutOrTip;
    
    pfnInstallLayoutOrTip = (PTF_ INSTALLLAYOUTORTIP)GetProcAddress(hInputDLL, "InstallLayoutOrTip");

    if(pfnInstallLayoutOrTip)
    {
        bRet = (*pfnInstallLayoutOrTip)(psz, dwFlags);
    }

    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
Input.dll