Est-il possible de changer la disposition du clavier via la ligne de commande sous Windows XP/7?
oui.
http://msdn.Microsoft.com/en-us/goglobal/bb964650#eyb
exemple de ligne de commande:
control intl.cpl,, /f:"%CD%\AddKeyboardLanguage.xml"
Exemple AddKeyboardLanguage.xml:
<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">
<gs:UserList>
<gs:User UserID="Current" CopySettingsToDefaultUserAcct="true" CopySettingsToSystemAcct="true"/></gs:UserList>
<gs:InputPreferences>
<!--ch-Google--><gs:InputLanguageID Action="add" ID="0804:E0200804"/>
</gs:InputPreferences>
</gs:GlobalizationServices>
Exemple RemoveKeyboardLanguage.xml:
<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">
<gs:UserList>
<gs:User UserID="Current" CopySettingsToDefaultUserAcct="true" CopySettingsToSystemAcct="true"/></gs:UserList>
<gs:InputPreferences>
<!--ch-Google--><gs:InputLanguageID Action="remove" ID="0804:E0200804"/>
</gs:InputPreferences>
</gs:GlobalizationServices>
Windows 8 introduit un nouveau module PowerShell International . Malheureusement, il ne semble pas que cela puisse être rétroporté ou qu’il existe une alternative à Windows 7.
Configurer les paramètres internationaux à l'aide des applets de commande PowerShell
Dans Windows 8, vous pouvez utiliser les cmdlets Paramètres internationaux PowerShell pour modifier la langue sur une installation Windows en cours d'exécution. L’utilisation des cmdlets PowerShell offre l’avantage de pouvoir les incorporer dans un script pour faciliter le déploiement et la configuration de Windows. Source: http://technet.Microsoft.com/en-us/library/hh825705.aspx
Importez le module de paramètres internationaux en exécutant la commande suivante:
ipmo international
Affichez les informations sur les paramètres régionaux sur l'ordinateur en exécutant la commande suivante:
Get-WinSystemLocale
Définissez les paramètres régionaux pour la région et la langue souhaitées. Par exemple, la commande suivante définit les paramètres régionaux du système sur japonais (Japon):
Set-WinSystemLocale ja-JP
"Windows 8 apporte un nouveau module International PowerShell. Malheureusement, il ne semble pas que cela puisse être rétroporté ou qu’il existe une alternative à Windows 7"
Vous pouvez essayer ceci (exemple) .. cela active uniquement les dispositions de clavier sélectionnées et efface les autres
Install-Module -name timezone -force
#Sets the systems timezone on "Western Europe Standard time"
$langlist = New-WinUserLanguageList en-US
#Clears the other input methods from the displayed language
$langlist[0].InputMethodTips.Clear()
#Sets and adds the swiss-German keyboard
$langlist[0].InputMethodTips.add('0409:00000807')
#Sets and adds the swiss-french keyboard
$langlist[0].InputMethodTips.add('0409:0000100C')
#Apply the changes made on the system (and force to avoid the Prompt message)
Set-WinUserLanguageList $langlist -Force
Non (pas via CMD), vous devrez le changer de la manière suivante. Il existait auparavant une commande keyb.com
sous DOS, mais celle-ci n’existait plus sous Windows.
Windows 7 ou Windows Vista
Windows XP
Mais vous pouvez sous Linux en utilisant loadkeys
.
$psdrive = New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS
Set-ItemProperty -Path "HKU:\.DEFAULT\Keyboard Layout\Preload\" -Name 1 -Value 00001033
$psdrive | Remove-PSDrive
Cela fonctionne bien dans Windows 7 PowerShell, mais vous devez vous déconnecter et vous reconnecter pour l'activer. Il change la présentation en anglais si vous voulez une autre langue, vous devez modifier le numéro -Value. Vous pouvez les trouver ici: https://www.science.co.il/language/Locale-codes.php