Windows Fontreg install fonts locally or remotely easily

From richud.com
Jump to navigation Jump to search


Works in Windows 2000 upwards (and in Win7 x64)

x32 and x64 bit versions

http://code.kliu.org/misc/fontreg

stick your .ttf .otf etc fonts and fontreg.exe in a folder and run; fontreg.exe /copy

The CWD must be where the fonts are! You cant execute the .exe from elsewhere otherwise it wont do anything (still returns errorcode 0 though).

It will copy fonts and register them to c:\windows\fonts

If copy fonts to c:\windows\fonts already just run fontreg.exe


Check they registered in and exist in c:\windows\fonts

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts



E:\fontreg>type readme.txt
If you...

...run FontReg.exe without any command-line switches:

  * FontReg will remove any stale font registrations in the registry.
  * FontReg will repair any missing font registrations for fonts located in
    the C:\Windows\Fonts directory (this step will be skipped for .fon fonts if
    FontReg cannot determine which fonts should have "hidden" registrations).

...run FontReg.exe with the /copy or /move switch:

  * FontReg will install all files with a .fon, .ttf, .ttc, or .otf file
    extension located in the CURRENT DIRECTORY (which might not necessarily be
    the directory in which FontReg is located).  Installation will entail
    copying/moving the files to C:\Windows\Fonts and then registering the fonts.

  * FontReg will remove any stale font registrations in the registry.
  * FontReg will repair any missing font registrations for fonts located in
    the C:\Windows\Fonts directory (this step will be skipped for .fon fonts if
    FontReg cannot determine which fonts should have "hidden" registrations).

FontReg.exe is intended as a replacement for Microsoft's outdated fontinst.exe,
and like fontinst.exe, FontReg.exe is fully silent--it will not print messages,
pop up dialogs, etc.; the process exit code will be 0 if there was no error.

batch file usage example

This example shows you copying and registering the fonts on a remote machine

This will copy the fonts and fontreg.exe to remote machine %h% into a folder "c:\temp\fonts" , then push to that folder, then execute fontreg.

  • Note, you cant execute fontreg from a different working directory else it wont see the the fonts, you must change to that dir first.


xcopy /i /s /y "%~dp0*" "\\%h%\c$\temp\fonts\"
psexec -e \\%h% cmd /c (pushd c:\temp\fonts ^& fontreg.exe /copy)