Можно ли изменить раскладку клавиатуры через командную строку в Windows XP / 7?
Можно ли изменить раскладку клавиатуры через командную строку в Windows XP / 7?
Ответы:
да.
http://msdn.microsoft.com/en-us/goglobal/bb964650#eyb
пример командной строки:
control intl.cpl,, /f:"%CD%\AddKeyboardLanguage.xml"
Пример 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>
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 появился новый международный модуль PowerShell. К сожалению, не похоже, что это может быть перенесено или имеет какую-либо альтернативу Windows 7
Настройте международные параметры с помощью командлетов PowerShell
В Windows 8 вы можете использовать командлеты PowerShell для международных настроек, чтобы изменить язык при работающей установке Windows. Преимущество использования командлетов PowerShell заключается в том, что вы можете включить их в сценарий, чтобы упростить развертывание и настройку Windows. Источник: http://technet.microsoft.com/en-us/library/hh825705.aspx
Импортируйте модуль международных настроек, выполнив следующую команду:
ИПМО международный
Отобразите информацию о локали на компьютере, выполнив следующую команду:
Get-WinSystemLocale
Установите языковой стандарт для региона и языка, который вы хотите. Например, следующая команда устанавливает системный языковой стандарт на японский (Япония):
Set-WinSystemLocale ja-JP
Set-WinUserLanguageList -Force 'ja-JP'
изменит язык ввода с клавиатуры. Обратите внимание на использование -Force
только, чтобы не получить всплывающее диалоговое окно. Get-WinUserLanguageList
предоставит вам список языков, доступных пользователю для набора текста.
«В Windows 8 появился новый международный модуль PowerShell. К сожалению, не похоже, что его можно перенести обратно или есть альтернатива Windows 7»
Вы можете попробовать это (пример) .. это включает только выбранные раскладки клавиатуры и очищает остальные
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
Нет (не через CMD), вам придется изменить его следующим образом. Раньше keyb.com
в DOS была команда, но в Windows ее больше нет.
Windows 7 или Windows Vista
Windows XP
Но вы можете в Linux использовать 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
Это хорошо работает в Windows 7 PowerShell, но вам нужно выйти и снова войти, чтобы включить, если он меняет макет на английский, если вам нужен другой язык, вам нужно изменить номер -Value, вы можете найти их здесь: https: // www. science.co.il/language/Locale-codes.php
Для информации: Set-WinUserLanguageList
как предложено в других ответах, он не только меняет активный язык ввода с клавиатуры, он переписывает текущий список (включенных) языков ввода. Чтобы установить два или более языков, между которыми вы можете переключаться, используйте что-то вроде этого:
Set-WinUserLanguageList -Force en-US,sv-SE
Язык, указанный в качестве первого аргумента списка, будет выбран в качестве активного языка, поэтому это может быть эффективным способом изменения как активного языка, так и общего списка доступных языков клавиатуры.