我们有一台 x64 Windows 7 专业版机器,其中部分字体无法删除,但并非所有字体都无法删除。有问题的字体不是系统字体或者Microsoft Office 字体(我认为他们还没有更新 Office2010 的列表)。一个例子:StoneSansOSITC TT(文件名IT243__.ttf
)。奇怪的是,同一系列中的其他字体也可以被删除,大约有六种。
错误信息类似于“此文件正在使用中,无法删除[重试] [跳过]”。
我们尝试删除本地管理员组成员域帐户下的字体以及本地管理员帐户下的字体。我们尝试从安全模式中删除字体,并尝试各种注销和重启的组合。
我用了进程探索器搜索打开的文件句柄,它识别csrss.exe
出该文件已打开,以及许多其他字体。我已经证明,正如维基百科上关于 csrss 的文章表示终止该进程会导致蓝屏死机。
我如何追踪哪个应用程序/服务/进程导致这些文件一直处于使用状态并将其关闭?
更新:
这个人的类似报告表示 Windows 7 可能存在问题,无法辨别字体系列中所代表的字体数量(认为有 4 种,但实际上有 6 种)。
此主题有一张我们看到的错误消息的图片:
答案1
我刚刚解决了这个问题。我通过一个名为的字体管理程序卸载了有问题的字体字体但我认为它可能与具有类似功能的其他程序兼容。
答案2
找到了一个基本能用的后门,但仍存在一些无法解释的怪异现象,例如 Windows 认为字体在注销/登录循环完成之前仍处于安装状态,并且如果稍后重新安装已删除的字体,Windows 会说该字体已安装,即使它未显示在列表中。值得庆幸的是,Adobe Illustrator 等应用程序在两种情况下都能看到真相,这无论如何都是理想的结果。
解决方案:
winkey打开两个 Windows 资源管理器窗口(为方便起见,使用- left、 winkey-将它们左右对齐right)。在其中一个窗口,使用 直接访问字体文件夹,绕过令人困惑的控制面板字体管理器\\machine-name\c$\Windows\Fonts
。在另外一个窗口,导航到C:\Windows\Fonts
,这将切换到字体管理器视图。
在 FM 端,找到要删除的每个字体,选择 > 属性获取实际文件名,然后从其他资源管理器窗口删除该文件。
更新:对于 C:\Windows\Fonts 窗口,右键单击列标题,即可显示文件名(然后单击标题按路径排序!)。
答案3
马特·威尔基的解决方案有效。不过,在 Windows 8 中还有更简单的方法。只需以管理员身份打开提升的命令提示符并输入以下命令:
del /f /s /q /a "C:\Windows\fonts\my-font.ttf"
这将强制删除文件,仅此而已。另请注意,如果字体不起作用,则可能需要在编辑后重新启动(主要是因为如果您有多种类型的同一种字体,则字体系列会混淆)
答案4
我刚开始Windows 7 安全模式然后删除字体。运行正常,没有文件使用错误。
编辑:结果发现我在安全模式下对某些文件出现了文件正在使用错误!所以我在安全模式下加载了 Cygwin 并在那里删除了。成功了。