Condividi tramite


Funzione InstallLayoutOrTipUserReg

Abilita i layout di tastiera o i servizi di testo specificati per l'utente specificato.

Sintassi

BOOL CALLBACK InstallLayoutOrTipUserReg(
  _In_opt_ LPCWSTR pszUserReg,
  _In_opt_ LPCWSTR pszSystemReg,
  _In_opt_ LPCWSTR pszSoftwareReg,
  _In_     LPCWSTR psz,
  _In_     DWORD   dwFlags
);

Parametri

pszUserReg [in, facoltativo]

Percorso del Registro di sistema dell'utente. Se questo parametro è NULL, viene usato HKEY_CURRENT_USER.

pszSystemReg [in, facoltativo]

Percorso del Registro di sistema. Se questo parametro è NULL, viene usato HKEY_LOCAL_MACHINE\System.

pszSoftwareReg [in, facoltativo]

Percorso del Registro di sistema del software. Se questo parametro è NULL, viene usato HKEY_LOCAL_MACHINE\Software.

psz [in]

Stringa che rappresenta l'elenco di layout della tastiera o l'elenco di profili dei servizi di testo.

dwFlags [in]

Campo di bit che specifica i flag seguenti.

Nota

Gli identificatori seguenti non sono definiti in un file di intestazione pubblica. È necessario usare il valore esadecimale o #define gli identificatori. Ad esempio, per usare ILOT_UNINSTALL è necessario includere #define ILOT_UNINSTALL 0x00000001 nel codice.

Valore Significato
ILOT_UNINSTALL
0x00000001
Uguale a ILOT_DISABLED.
ILOT_DEFPROFILE
0x00000002
Imposta il layout o il suggerimento specificati come elemento predefinito.
ILOT_NOAPPLYTOCURRENTSESSION
0x00000020
L'impostazione viene salvata ma non viene applicata alla sessione corrente.
ILOT_CLEANINSTALL
0x00000040
Disabilita tutti i layout e i servizi di testo correnti della tastiera.
ILOT_DISABLED
0x00000080
Disabilita il layout della tastiera e il servizio di testo specificati.

Valore restituito

Codice restituito Descrizione
TRUE
La funzione ha avuto esito positivo.
FASE
Si è verificato un errore non specificato.

Commenti

Il formato stringa dell'elenco di layout è:

<LangID 1>:<KLID 1>;[ ...< LangID N>:<KLID N>

Il formato stringa dell'elenco di profili del servizio di testo è:

<LangID 1>:{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx};

Di seguito è riportato un esempio di valore per il parametro psz :

"0x0407:0x00000407"
"0x0407:0x00000407;0x040C:0x0000040C"
"0x0407:0x00000407;0x0412:{A028AE76-01B1-46C2-99C4-ACD9858AE02F}{B5FE1F02-D5F2-4445-9C03-C568F23C99A1};0x040C:0x0000040C"

Esempio

Non è disponibile alcuna libreria di importazione che definisce questa funzione, quindi è necessario ottenere un puntatore a questa funzione usando LoadLibrary e GetProcAddress. Nell'esempio seguente viene illustrato come ottenere un puntatore a questa funzione.

Nota

L'uso di LoadLibrary in modo non corretto può compromettere la sicurezza dell'applicazione caricando la DLL errata. Per informazioni su come caricare correttamente le DLL con versioni diverse di Microsoft Windows, vedere Ordine di ricerca libreria a collegamento dinamico .

typedef HRESULT (
  WINAPI *PTF_ INSTALLLAYOUTORTIPUSERREG)(LPCWSTR pszUserReg, 
  LPCWSTR pszSystemReg, 
  LPCWSTR pszSoftwareReg, 
  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_ INSTALLLAYOUTORTIPUSERREG pfnInputLayoutOrTipUserReg;
    
    pfnInputLayoutOrTipUserReg = (PTF_ INSTALLLAYOUTORTIPUSERREG)GetProcAddress(hInputDLL, "InputLayoutOrTipUserReg");

    if(pfnInputLayoutOrTipUserReg)
    {
        bRet = (*pfnInputLayoutOrTipUserReg)(pszUserReg, pszSystemReg, pszSoftwareReg, psz, dwFlags);
    }

    FreeLibrary(hInputDLL);
}

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista [solo app desktop]
Server minimo supportato
Windows Server 2008 [solo app desktop]
DLL
Input.dll