Назад | Перейти на главную страницу

Языковая панель исчезает после прерывания теневого подключения к удаленному рабочему столу с пользователем в Windows Server [2012 R2 в моем случае]

По сути, вопрос в том, как оно есть. Ошибка существует довольно давно, но не похоже, чтобы от нее можно было избавиться. Мне удалось найти кое-что на русском и английском, но там не повезло. https://social.technet.microsoft.com/Forums/ru-RU/a115017f-378e-4a64-83dc-195001d7f182/-shadow-2012-r2?forum=WS8ru#26cfec67-f6e1-42c1-a9d3-68a31053b4ad https://social.technet.microsoft.com/Forums/windowsserver/en-US/6f738827-70a1-448c-8635-a01e41afca8f/windows-2012r2-language-bar-disappears-after-shadow?forum=winserverTS#147cc3cb- cd5e-452f-afeb-4e4accfb9927

Таким образом, это происходит как при подключении с самого сервера, так и при подключении с компьютера с соответствующими административными объектами групповой политики (и пользователю предоставляются права администратора), как только вы отключаетесь, кажется, что панели даже нет. Помогают три вещи: 1. Вы переходите в Панель управления -> Язык и меняете местами два (или более) отображаемых там языка. 2. Вы добавляете еще один в список. 3. Пользователь повторно входит в сеанс терминала.

Похоже, что эта вещь представляет Active Directory как объект, независимый от пользователей, подключающихся к терминальному серверу или просто входящих в учетную запись AD на определенном компьютере домена. Возможно, это как-то связано с завершением работы ctfmon.exe или с языковым вводом.

Я пытался облажаться с атрибутами реестра

HKEY_CURRENT_USER\Keyboard Layout\Preload
HKEY_CURRENT_USER\Keyboard Layout\Toggle

и это

Control Panel\All Control Panel Items\Language\Advanced settings
"Let me set a different input method for each app window"

Там не повезло

Я был бы очень признателен за некоторые направления здесь.

У меня та же проблема, но на Server 2016. Наиболее распространенное решение, которое я нашел в Интернете, - это создать новую строку в реестре через Regedit в этом разделе:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

с любым именем и этим значением:

ctfmon"="c:\Windows\System32\CTFMON.EXE" 

и перезагрузите сервер.

Но время от времени это срабатывает, и я не понимаю почему.

Если у кого-то есть лучшее решение, я был бы признателен.