Проблемы с переключением раскладки клавиатуры на терминальном сервере Windows 2008
Описанное актуально для английской версии WinServ2008R2 + русскоязычного MUI возможно, для других комбинаций языков поведение этой чудо-системы отличается.
После ввода в эксплуатацию терминального сервера под управлением, прости господи, Windows Server 2008 R2, обнаружилась следующая проблема: периодически у подключающихся по протоколу RDP (удаленный рабочий стол) пользователей перестает переключаться раскладка клавиатуры.
В системном трее язык переключается как обычно (к примеру, с RU на EN), но при этом ввод продолжает оставаться в раскладке RU, а рядом со значком EN появляется значок в форме клавиатуры, кликнув на который мышью можно уже вручную в появившемся контекстном меню изменить язык ввода – и вот тогда он действительно заменится на выбранный.
Подобное непотребство происходит в том случае, если в момент подключения у клиента и сервера различаются текущие раскладки клавиатуры. Если в момент входа языки выбраны одинаково, то описанная проблема не возникает.
Есть и решение – можно заставить сервер игнорировать раскладку клавиатуры, с которой производилось клиентское подключение.
К сожалению, разработчики из Microsoft не удосужились добавить графический интерфейс для этой опции, поэтому потребуется вносить изменения в реестр вручную.
- Открываем редактор реестра (regedit.exe);
- Открываем ключ HKLM\System\CurrentControlSet\Control\Keyboard Layout;
- Создаем параметр IgnoreRemoteKeyboardLayout (REG_DWORD) и присваиваем ему значение “1”;
- Перезагружаем сервер.
Теперь язык ввода всегда должен переключаться по комбинации заданной комбинации клавиш, без необходимости клацания мышью.