Can't remove certain fonts in Windows 7

19

8

We have an x64 Windows 7 professional machine on which some but not all fonts can not be removed. The problematic fonts in question are not system fonts or Microsoft Office fonts (I think, they haven't updated the list for Office2010). One example: StoneSansOSITC TT (filename IT243__.ttf). Curiously other fonts in the same family could be deleted, about half a dozen.

The error message is something like "this file is in use and can't be deleted [try again] [skip]".

We've tried removing the fonts under a domain account which is member of the local Administrators group as well as the Local Administrator account. We've tried removing from Safe Mode and various combinations of logging off and rebooting.

I used Process Explorer to search for the open file handle, and it identifies csrss.exe as having that file open, as well as a number of other fonts. I've proved, as the wikipedia article on csrss says, that terminating the process results in a blue screen of death.

How do I track down which application/service/process is causing these files to be in use all the time and shut them down?

update:

This person's similar report indicates there may be a problem with Windows 7 getting confused over how many typefaces are represented in a font family (thinks there are 4 when actually are 6).

This thread has a pic of the error message we see: font cannot be deleted because it is in use error dialog

We tried the Unlocker program mentioned here, and while it identified locked files in the fonts directory they didn't match the ones we were attempting to delete.

matt wilkie

Posted 2011-03-29T16:29:35.620

Reputation: 4 147

Answers

10

Found a back door which works, mostly, but there are still some unexplained oddities like Windows thinks the fonts are still installed until a logoff/on cycle is completed, and that if the removed font is later re-installed Windows says the font is already installed, even though it is not displayed in the list. Thankfully applications like Adobe Illustrator see the truth in either case, which is the desired result in any case.

The kludge:

Open two Windows Explorer windows,(for convenience snap them right and left with winkey-left, winkey-right.) On one side access the font folder directly, bypassing the confused Control Panel font manager, with \\machine-name\c$\Windows\Fonts. On the other navigate to C:\Windows\Fonts, which will switch to Font Manager view.

On the FM side, locate each font to be removed, select > properties to get the actual filename, and then delete that file from the other explorer window.

remove problem fonts via UNC path

Update: For the C:\Windows\Fonts window, right-click on column heading and you can show the file name (and then click on heading to sort by path!).

details view columns context menu

matt wilkie

Posted 2011-03-29T16:29:35.620

Reputation: 4 147

4Some fonts may have multiple files (b, z, i, l, etc). You will have to remove all of them to fully uninstall the particular font. – ADTC – 2013-02-22T19:12:33.350

And for those of us who stupidly managed to download thousands of fonts... good luck. – leigero – 2013-09-13T16:05:40.707

4You will also need to log in as administrator and remove the registry keys for the corresponding fonts, in HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts. – JPaget – 2013-09-17T14:29:17.700

13

I've just managed to solve this. I uninstalled the problem font via a font management program called NexusFont but I think it will probably work with other programs with a similar functionality.

orly

Posted 2011-03-29T16:29:35.620

Reputation: 131

1Wow this worked brilliantly for me and I was crazy about it. Spent a while in safe mode/ trying unlocker etc etc but this worked like a charm. – Valentin Kuzub – 2013-04-18T05:24:13.817

I've been using NexusFont for a while for font viewing, but never realized it would solve this problem as well. Thanks! – naveed – 2013-06-10T20:33:05.597

10

matt wilkie's solution works. There's an even easier way in Windows 8, though. Simply open an elevated command prompt as administrator and enter the following command:

del /f /s /q /a "C:\Windows\fonts\my-font.ttf"

That will force delete the file and that's it. Please also note, that a restart might be required after editing it if the font doesn't work (mostly due to the confusion with font families if you have multiple types of the same font)

Tim

Posted 2011-03-29T16:29:35.620

Reputation: 201

1This worked but ensure you use CMD not Powershell with elevated administrator rights. – Mike Averto – 2015-08-26T19:12:45.670

4

Actually, if you still can't delete fonts because windows says they are in use, then boot to safe mode with only the command window. cd to c:\Windows\Fonts and delete the fonts directly from here. This worked like a champ. Note that you will need to note the file names of the fonts you want to delete before you reboot to safe mode.

Eds

Posted 2011-03-29T16:29:35.620

Reputation: 49

2@mattwilkie Safe Mode is not Safe Mode Command Prompt. The virtue of Safe Mode Command Prompt is that many processes that might open fonts, such as Windows Explorer, do not start. The only more effective way to avoid open files is Recovery Shell. – MetaEd – 2015-01-08T21:22:06.320

This should be the accepted answer as it will work always – Gusman – 2015-04-20T11:47:47.093

@Gusman ...after you identify the correct filename(s) for the fonts you need to delete yes this will always work. – matt wilkie – 2016-01-04T19:11:31.090

Georgie Casey already said to use Safe Mode in august, albeit even then some were still in use.

– matt wilkie – 2012-12-07T17:30:10.040

2

I just started Windows 7 in Safe Mode and deleted the fonts then. Worked fine with no file in use error.

edit: turned out i got the file in use error in safe mode on some files! so i loaded up Cygwin in safe mode and deleted there. Worked.

georgiecasey

Posted 2011-03-29T16:29:35.620

Reputation: 160

Also see @MetaEd's comment to other answer here, about using Safe Mode Command Prompt, not just Safe Mode.

– matt wilkie – 2017-05-11T17:19:28.597

1

When I had this problem it was the Windows font Control Panel that was actually using the font.

All I needed to do was open the "Organise" menu, "Layout" submenu and untick "Details pane". I was now able to delete the font.

I'm using Windows 10 Creators Update, but the Control Panel looks the same as the Windows 7 version. If this works for anyone using Windows 7 or 8 please can you comment and I'll update the answer.

thelem

Posted 2011-03-29T16:29:35.620

Reputation: 151