Japanatron Logo

I found this awesome Windows powershell script that allows you to install fonts via the command line.  This is very convenient for mass deployment.

$ssfFonts = 0x14
$fontSourceFolder = "\\PATH\TO\FONTS"
$Shell = New-Object -ComObject Shell.Application
$SystemFontsFolder = $Shell.Namespace($ssfFonts)
$FontFiles = Get-ChildItem $fontSourceFolder
$SystemFontsPath = $SystemFontsFolder.Self.Path
$rebootFlag = $false

foreach($FontFile in $FontFiles) {
    # $FontFile will be copied to this path:
    $targetPath = Join-Path $SystemFontsPath $FontFile.Name
    # So, see if target exists...
    if(Test-Path $targetPath){
        # font file with the same name already there.
        # delete and replace.
        $rebootFlag = $true
        Remove-Item $targetPath -Force
        Copy-Item $FontFile.FullName $targetPath -Force
    }else{
        #install the font.
        $SystemFontsFolder.CopyHere($FontFile.fullname)
    }
}

#Follow-up message
if($rebootFlag){
    Write-Host "At least one existing font overwritten. A reboot may be necessary."
}

Related Articles

The Hunt for the Ultimate Free...

In the hopes of reducing my monthly smartphone bill, I've been investigating the current state of VoIP and its potential to completely replace the traditional m...

RDP - Enable Remote Desktop in...

1. Open registry editor (regedt32) and navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server.  Registry editor can also connect to rem...

Windows - Disable Startup Reco...

If a colleague's PC crashes, Windows will restart into start-up recovery.  The problem here is that start-up recovery often makes an even bigger mess of the com...

How to Fix the Windows Managem...

A corrupt WMI repository can mess up things like the Symantec management agent and its ability to deploy software.  If you check properties of "WMI Control" in ...