Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Définit la disposition spécifiée du clavier ou un service de texte en tant qu’élément d’entrée par défaut du registre utilisateur.
Syntaxe
BOOL CALLBACK SetDefaultLayoutOrTipUserReg(
_In_opt_ LPCWSTR pszUserReg,
_In_opt_ LPCWSTR pszSystemReg,
_In_opt_ LPCWSTR pszSoftwareReg,
_In_ LPCWSTR psz,
_In_ DWORD dwFlags
);
Paramètres
-
pszUserReg [in, facultatif]
-
Le chemin d’accès au Registre de l’utilisateur. Si ce paramètre a une valeur NULL, HKEY_CURRENT_USER est utilisé.
-
pszSystemReg [in, facultatif]
-
Chemin d’accès au Registre du système. Si ce paramètre a une valeur NULL, HKEY_LOCAL_MACHINE\System est utilisé.
-
pszSoftwareReg [in, facultatif]
-
Chemin d’accès au Registre du logiciel. Si ce paramètre a une valeur NULL, HKEY_LOCAL_MACHINE\Software est utilisé.
-
psz [in]
-
Une chaîne représentant la liste des dispositions du clavier ou la liste des profils de services de texte.
-
dwFlags [in]
-
Champ de bits qui spécifie les indicateurs suivants :
Remarque
Les identificateurs suivants ne sont pas définis dans un fichier d’en-tête publique. Vous devez utiliser la valeur hexadécimale ou #definir les identificateurs. Par exemple, pour utiliser SDLOT_NOAPPLYTOCURRENTSESSION, vous devez inclure #define SDLOT_NOAPPLYTOCURRENTSESSION 0x00000001 dans votre code.
Valeur Signification - SDLOT_NOAPPLYTOCURRENTSESSION
- 0x00000001
Stocke le paramètre dans le Registre, sans mettre à jour le paramètre de runtime du clavier pour la session active. Si le chemin d’accès de remplacement au registre est défini dans SetDefaultLayoutOrTipUserReg, cet indicateur doit être défini. - SDLOT_APPLYTOCURRENTTHREAD
- 0x00000002
Applique immédiatement le paramètre au thread actif.
Valeur retournée
| Code de retour | Description |
|---|---|
|
La fonction a réussi. |
|
Une erreur non spécifiée s'est produite. |
Notes
Le format de chaîne de la liste de disposition est le suivant :
<LangID 1> :<KLID 1> ; [...<LangID N>:<KLID N>
Le format de chaîne de la liste de profils du service de texte est le suivant :
<LangID 1> : {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx};
Voici un exemple de valeur pour le paramètre psz :
"0x0407:0x00000407"
"0x0407:0x00000407;0x040C:0x0000040C"
"0x0407:0x00000407;0x0412:{A028AE76-01B1-46C2-99C4-ACD9858AE02F}{B5FE1F02-D5F2-4445-9C03-C568F23C99A1};0x040C:0x0000040C"
Exemples
Il n’existe aucune bibliothèque d’importation disponible qui définit cette fonction. Il est donc nécessaire d’obtenir un pointeur vers cette fonction à l’aide de LoadLibrary et GetProcAddress. L’exemple suivant montre comment obtenir un pointeur vers cette fonction.
Remarque
L’utilisation incorrecte de LoadLibrary peut compromettre la sécurité de votre application en chargeant la mauvaise bibliothèque de liens dynamiques. Consultez l’ordre de recherche de la bibliothèque de liens dynamiques pour obtenir des informations sur la façon de charger correctement des DLL avec différentes versions de Microsoft Windows.
typedef HRESULT (
WINAPI *PTF_ SETDEFAULTLAYOUTORTIPUSERREG)( LPCWSTR pszUserReg,
LPCWSTR pszSystemReg,
LPCWSTR pszSoftwareReg,
LPCWSTR psz);
HMODULE hInputDLL = LoadLibrary(TEXT("input.dll"));
BOOL bRet = FALSE;
if(hInputDLL == NULL)
{
//Error loading module -- fail as securely as possible
}
else
{
PTF_ SETDEFAULTLAYOUTORTIPUSERREG pfnSetDefaultLayoutOrTipUserReg;
pfnSetDefaultLayoutOrTipUserReg = (PTF_ SETDEFAULTLAYOUTORTIPUSERREG)GetProcAddress(hInputDLL, "SetDefaultLayoutOrTipUserReg");
if(pfnSetDefaultLayoutOrTipUserReg)
{
bRet = (*pfnSetDefaultLayoutOrTipUserReg)( pszUserReg, pszSystemReg, pszSoftwareReg, psz);
}
FreeLibrary(hInputDLL);
}
Configuration requise
| Condition requise | Value |
|---|---|
| Client minimal pris en charge |
Windows Vista [applications de bureau uniquement] |
| Serveur minimal pris en charge |
Windows Server 2008 [applications de bureau uniquement] |
| DLL |
|