Condividi tramite


Funzione SetDefaultLayoutOrTip

Imposta il layout di tastiera specificato o un servizio di testo come elemento di input predefinito dell'utente corrente.

Sintassi

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

Parametri

psz [in]

Stringa che rappresenta un elenco di layout di tastiera o un elenco di profili di 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 SDLOT_NOAPPLYTOCURRENTedizione Standard SSION è necessario includere #define SDLOT_NOAPPLYTOCURRENTedizione Standard SSION 0x00000001 nel codice.

valore Significato
SDLOT_NOAPPLYTOCURRENTedizione Standard SSION
0x00000001
Archivia l'impostazione nel Registro di sistema ma non aggiorna l'impostazione della tastiera di runtime della sessione corrente. Se il percorso alternativo del Registro di sistema è impostato in SetDefaultLayoutOrTipUserReg, questo flag deve essere impostato.
SDLOT_APPLYTOCURRENTTHREAD
0x00000002
Applica l'impostazione immediatamente sul thread corrente.

Valore restituito

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

Osservazioni:

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"

Esempi

Non è disponibile una 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 errato 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_ 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);
}

Requisiti

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