Czy można zmienić układ klawiatury za pomocą wiersza polecenia w systemie Windows XP / 7?
Czy można zmienić układ klawiatury za pomocą wiersza polecenia w systemie Windows XP / 7?
Odpowiedzi:
tak.
http://msdn.microsoft.com/en-us/goglobal/bb964650#eyb
przykład wiersza poleceń:
control intl.cpl,, /f:"%CD%\AddKeyboardLanguage.xml"
Przykład 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>
Przykład 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 wprowadza nowy moduł International PowerShell. Niestety nie wydaje się, że można to zrobić z backportem lub ma jakąkolwiek alternatywę dla systemu Windows 7
Skonfiguruj ustawienia międzynarodowe za pomocą poleceń cmdlet programu PowerShell
W systemie Windows 8 można użyć poleceń cmdlet programu PowerShell Ustawienia międzynarodowe, aby zmienić język uruchomionej instalacji systemu Windows. Zaletą używania poleceń cmdlet programu PowerShell jest to, że można je włączyć do skryptu, aby ułatwić wdrożenie i konfigurację systemu Windows. Źródło: http://technet.microsoft.com/en-us/library/hh825705.aspx
Zaimportuj moduł ustawień międzynarodowych, uruchamiając następujące polecenie:
ipmo international
Wyświetl informacje o ustawieniach regionalnych na komputerze, uruchamiając następujące polecenie:
Get-WinSystemLocale
Ustaw ustawienia regionalne dla wybranego regionu i języka. Na przykład następujące polecenie ustawia ustawienia regionalne systemu na japoński (Japonia):
Set-WinSystemLocale ja-JP
Set-WinUserLanguageList -Force 'ja-JP'
zmieni język wprowadzania na klawiaturze. Zauważ, że użycie -Force
jest tylko po to, aby nie wyświetlać okna dialogowego. Get-WinUserLanguageList
poda Ci listę języków dostępnych dla użytkownika do pisania.
„Windows 8 wprowadza nowy moduł International PowerShell. Niestety nie wydaje się, aby można go było importować lub ma alternatywę dla systemu Windows 7”
Możesz spróbować tego (przykład) .. to włącza tylko wybrane układy klawiatury i usuwa pozostałe
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
Nie (nie przez CMD), musisz to zmienić w następujący sposób. Kiedyś keyb.com
w DOSie było polecenie, ale nie ma go już w systemie Windows.
Windows 7 lub Windows Vista
Windows XP
Ale możesz w Linuksie za pomocą 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
Działa to poprawnie w programie Windows 7 PowerShell, ale musisz się wylogować i zalogować ponownie, aby zmienić układ na angielski, jeśli chcesz inny język, musisz zmienić wartość -Value, którą możesz znaleźć tutaj: https: // www. science.co.il/language/Locale-codes.php
Dla informacji: Set-WinUserLanguageList
jak sugerowano w innych odpowiedziach, nie tylko zmienia on aktywny język wprowadzania na klawiaturze, ale zastępuje twoją aktualną listę (włączonych) języków wprowadzania. Aby skonfigurować dwa lub więcej języków, między którymi można się przełączać, użyj czegoś wzdłuż następujących linii:
Set-WinUserLanguageList -Force en-US,sv-SE
Język podany jako pierwszy argument listy zostanie wybrany jako język aktywny, więc może to być skuteczny sposób zmiany zarówno aktywnego języka, jak i ogólnej listy dostępnych języków klawiatury.