After some research I was surprised to find how complex some processes are. I wanted a simple Group Policy to deploy fonts and found that the most straight forward way to deploy fonts via GPO was to build an .MSI and then deploy the .MSI. This sounds harder than it is:
Building the .MSI for the Fonts
1 – Get the Registry Settings
- Manually Install the fonts in question on your own PC (because it is much easier to copy the registry entries than it is to type them 🙂 )
- Launch RegEdit and expand to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts
- Click FILE > EXPORT and save the file as some name you like
- Open the resulting .REG file with Notepad and remove all references to other fonts
2 – Use the Freeware Version of Advanced Installer to Build and .MSI
- Download and install the freeware version of Advanced Installer then start it
- Select NEW > INSTALLER > scroll down in the right window and select SIMPLE, then click the CREATE PROJECT button
- Enter a PRODUCT NAME and a COMPANY NAME if you wish
- Scroll down and select the DISABLE MODIFY check box – this is not required but might confuse users if it is left on
- From the left menu select INSTALL PARAMTERS and select the LIMIT TO BASIC USER INTERFACE checkbox
- From the left menu select FILES AND FOLDERS and expand TARGET COMPUTER > WINDOWS VOLUME > WINDOWS > FONTS
- From the top menu select FILES and select the fonts files
- From the left menu select REGISTRY and expand TARGET COMPUTER >HKEY_LOCAL_MACHINE > SOFTWARE > MICROSOFT > WINDOWS NT > CURRENT VERSION > FONTS
- From the top menu select IMPORT REG and point to the REG file you created in the GET REGISTRY SETTINGS section above
- From the top menu select FILE > SAVE AS and name your project what you like
- From the top menu select HOME tab, select BUILD and name your .MSI what you like
3 – Deploy Your Fonts Using Group Policy
- Copy the .MSI from step 11 above to a place on the network that all computers have access
- On your Windows Server, open your GROUP POLICY MANAGEMENT CONSOLE
- Expand the OU containing the COMPUTERS (not Users) you want to install the fonts on
- Right click and select CREATE NEW GPO then name it as you wish
- Right click on that GPO and select EDIT
- Expand COMPUTER CONFIGURATION > POLICIES SOFTWARE SETTINGS
- Right click on SOFTWARE INSTALLATION and select NEW > PACKAGE
- Point to the .MSI that contains your fonts and make doubly sure that you are using a UNC path (no drive letters!) and that all the PC’s can see that path.
- Wait for GPO to be applied (or run a GPUPDATE /FORCE if you can’t wait)
- Reboot
- have a nice day!
Much of these instructions were inspired by THIS article which is older but contains screen shots of the Advanced Installer tool that you might find handy.
20 Comments
vlad · October 22, 2022 at 4:48 am
These are not all options for installing fonts.
Another option is to wrap the font in msi.
For example, Silent Install Builder can wrap a font in an msi.
https://www.silentinstall.org/font-to-gpo/
There are many similar tools on request exe to msi or font to msi
Andy · August 22, 2019 at 1:36 pm
Muchas gracias funciono perfectamente.
Karen · July 10, 2017 at 11:49 am
My package completed as an aip not an msi and i couldn’t add it to the GPO. I changed the extension to .msi and then it could “see” it but the add operation failed.
Ian Matthews · July 27, 2017 at 3:41 pm
Hi Karen;
I have never used an AIP but it will not work with Group Policy I am sure. It looks like some packaged product: https://fileinfo.com/extension/aip
Nayem · October 13, 2017 at 7:44 am
AIP is the project file, you need to build the MSI then click “Open output folder”. You’ll find your .msi in there
Sergio Ortiz · August 7, 2015 at 11:11 am
I configured the installation, when I was creating the software installation GPO I got this error “There is no software installation data object in the Active Directory”, I resolved this problem using this article:
http://www.urtech.ca/2012/12/solved-there-is-no-software-installation-data-object-in-the-active-directory/
The deploy works only if the user has administrator rights in the client machine, I cannot figure out how to allow non machine admins to install the font
Ian Matthews · August 18, 2015 at 9:09 pm
Hi; I was able to deploy to standard users as none of my users are local admins. Perhaps something else was causing the issue.
Vadim Rapp · May 26, 2015 at 6:59 am
Writing registry entries is unnecessary and shouldn’t be in the installation. So better skip part 1 and #8,9 from part 2. Windows automatically registers any fonts copied into Fonts folder, and it’s better to leave it to Windows.
Sanam · May 1, 2015 at 1:10 am
I am stuck in step 2.8
From TARGET COMPUTER >HKEY_LOCAL_MACHINE > SOFTWARE >
there is no MICROSOFT > WINDOWS NT > CURRENT VERSION > FONTS
Ian Matthews · July 28, 2015 at 7:52 pm
That path does exist on every machine I have worked on and I just confirmed that includes Windows 10. I would retry. Please let me know how it goes.
JENEBO · June 7, 2016 at 1:03 pm
I am also stuck on this step of the Registry on step 2.8. I don’t have this location. Where do I import my registry file to?
Thanks
Ian Matthews · June 26, 2016 at 8:18 pm
Are you sure that path does not exist. I have never seen a PC without it since I started looking. Are you sure you are in the WINDOWS NT (note the NT) key?
Erik Thijs · September 25, 2014 at 7:54 am
Wouldn’t it be much easier to use policy preferences to:
– copy the .ttf files from a network location to te target pc
– add the registry settings to the target pc
No need to package the font files and registry settings in a MSI file…
Ian Matthews · September 27, 2014 at 7:29 pm
Sure… that can work but it is pretty easy to build the MSI.
Your call as to what you prefer 🙂
Dominik Wagner · September 17, 2014 at 3:34 am
Dude, that was a life saver…had to deploy a couple of otf fonts to close to 150 machines today and fiddled with fontreg.exe and Group Policy preferences until I stumbled upon your blog.
If you’re ever around Marburg, Germany, drop me a line, I owe you at least one beer 🙂
Ian Matthews · September 18, 2014 at 6:29 pm
Thanks… I’ll be on Air Canada Flight 123, see you at the Airport bar!
Gareth · August 1, 2014 at 12:41 am
I’ve done something wrong, as I followed the instructions. It installed the registy entries for the fonts, but not the fonts themselves (though I did include them as per step 2 point 7).
Any pointers ?
Thanks
Ian Matthews · August 6, 2014 at 8:51 pm
Sorry, just what I have on the page
Darren Drake · October 27, 2014 at 7:33 am
You need to open the properties on the font files in advanced installer and go to “Registration” make sure you check the box to register the fonts and you are golden!
Font Installation Mass Deployment · August 4, 2016 at 3:34 pm
[…] This worked for me. Remember you need to reboot before font is visible. SOLVED: How To Deploy Fonts Using Group Policy – Up & Running Technologies Calgary […]