我在域环境中运行 Windows 2019 终端服务器(因此没有本地管理员帐户,只有域管理员帐户)。当我以管理员身份登录并安装字体时,它们仅为该用户(即管理员)安装。
ttf 文件最终在C:\Users\Administrator\AppData\Local\Microsoft\Windows\Fonts
而不是 中C:\Windows\Fonts
。此外,字体在 中注册HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Fonts
,而不是 中HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts
。
我甚至运行了一个安装字体的 vbs 脚本,并使用 SYSTEM 帐户通过计划任务运行它,但是将字体放入了C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft\Windows\Fonts
SYSTEM 帐户本地。
有没有什么方法可以强制所有用户安装字体?
答案1
答案很简单:当右键单击字体时,会出现众所周知的“安装”选项。下面是“为所有用户安装”选项,这正是我想要的。
(抱歉,我在这里看得太盲了,我已经使用这个功能太频繁了,以至于我没有再阅读菜单,完全忽略了“为所有用户安装”。)
答案2
在某些 Windows Server 版本上,右键单击不提供该选项。
对于这些问题,解决方案是创建一个 GPO,即“安装自定义字体”,它将从可访问的网络共享(例如“\fileserver\Fonts”)安装字体。出于安全原因,应将共享设置为只读。
GPO 需要执行 2 个步骤:* 使用 Computer\Preferences\Files 路径复制字体文件,使用“更新”模式,选择源路径为“\fileserver\Fonts\thefont.ttf”,目标路径为“c:\windows\fonts\thefont.ttf”。* 通过为 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\Current Version\Fonts 创建新条目,将字体记录在注册表中,名称为“The Font (TrueType)”最后带括号的部分是必填的,其值为“thefont.ttf”。
将 GPO 链接到目标服务器/计算机所属的组织单位。连接到计算机并从命令提示符(又名 cmd)运行“gpupdate /force”或重新启动计算机。
这几乎挽救了我的一周。
答案3
还有另一种方法。使用管理员命令提示符,将字体文件复制到“c:\windows\fonts”文件夹。然后编辑注册表以将字体文件名添加到列表中(HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts)重新启动机器。我曾用它在终端服务器上为仓库用户安装条形码字体。