本质上,问题在于它现在的状态。这个漏洞已经存在了很长一段时间,但似乎没有特定的方法可以消除它。我找到了一些俄语和英语版本的内容,但都没有成功。 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
因此,当您从服务器本身或从应用了相应管理 GPO 的计算机(并且授予用户管理员权限)连接时,都会发生这种情况,只是您断开连接时感觉栏根本不存在。有三件事可以提供帮助: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"
没有运气
我将非常感谢这里的一些指导。
答案1
我在 Server 2016 上遇到了同样的问题。我在网上找到的最常见的解决方案是通过 Regedit 在注册表中创建一个新字符串:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
使用任意名称和以下值:
ctfmon"="c:\Windows\System32\CTFMON.EXE"
并重新启动服务器。
但这有时会起作用,我不明白为什么。
如果有人有更好的解决方案我将不胜感激。