You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

求助:无需重启即可删除被占用字体文件的方法

求助:无需重启即可删除被占用字体文件的方法

我太懂这种每次删个字体都要重启的糟心感了!之前处理过一模一样的情况,给你几个亲测有效的办法,不用重启就能搞定:

  • 重启用户态的字体驱动进程:按下Ctrl+Shift+Esc打开任务管理器,找到名为「字体驱动主机(fontdrvhost.exe)」的进程——注意区分带「用户」后缀的那个(对应你当前登录账户的进程,不是系统级的),右键选择「结束任务」。这个进程结束后会自动重启,重启后之前占用的字体文件句柄就会被释放,这时你就能顺利删除文件了。千万别碰系统级的fontdrvhost进程,不然可能导致系统字体异常。

  • 用Sysinternals工具以SYSTEM权限删除:既然你已经在用Process Explorer,那应该有Sysinternals的工具集。打开管理员命令提示符,先运行psexec -s cmd.exe,这会打开一个以SYSTEM权限运行的命令窗口。在这个窗口里,直接用del /f /q "你的字体文件完整路径"命令删除文件——SYSTEM权限比普通管理员更高,大概率能绕过进程占用的限制。

  • 修改文件权限获取控制权:右键目标字体文件→「属性」→「安全」→「高级」→「更改」所有者,把所有者改成你的管理员账户,然后给自己添加「完全控制」的权限。有时候看似是进程占用,实则是权限不足导致无法删除,改完权限后再试试删除。

  • 通过资源监视器关闭句柄:打开任务管理器切换到「性能」选项卡,点击底部的「打开资源监视器」,在「关联的句柄」搜索框里输入字体文件名,找到对应的句柄条目,右键选择「关闭句柄」(如果是用户态进程的句柄,关闭后不会影响系统)。不过这个操作有一定风险,要是误关了系统进程的关键句柄可能出问题,操作前最好确认句柄所属的是fontdrvhost的用户态进程。

备注:内容来源于stack exchange,提问作者Ξένη Γήινος

火山引擎 最新活动