Skip to content

Commit 89231c7

Browse files
committed
Updated project name
1 parent 087fb0a commit 89231c7

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

FontInstallationIssues.md

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,49 +6,49 @@ When creating this setup, and when deploying this setup to 200+ machines, I face
66

77
For whatever reason, sometimes the *.ttf files are broken and depending how exactly they are broken can lead to all sorts of effects, from "Font can't be used" to "Some glyphs are broken".
88

9-
*OSFontPack.exe* uses SHA-1 hashes to compare the files that should be installed with the files actually installed. This has the side effect that always the files included with the setup are installed, even if one font file was already manually updated to a newer version.
9+
*HackWindowsInstaller* uses SHA-1 hashes to compare the files that should be installed with the files actually installed. This has the side effect that always the files included with the setup are installed, even if one font file was already manually updated to a newer version.
1010

1111
##The FONTS applet might save fonts as (Fontname)_X.ttf
1212

1313
When copying TTF files by simply dropping them onto the *Fonts* applet from Control Panel and the file that is copied is currently locked in *C:\WINDOWS\FONTS*, the applet will just append `_0` to the filename without extension and register this new file to the registry. For example, dropping `Hack-Regular.ttf` to FONTS when this file is locked will save the file as `Hack-Regular_0.ttf` to *C:\WINDOWS\FONTS*.
1414

1515
Depending on the application and the caching method it can happen that the application continues to use the old font file.
1616

17-
*OSFontPack.exe* will delete any *(Fontname)_X.ttf* for each font file it installs. However, if a font file was renamed, *OSFontPack.exe* won’t delete the old _0.ttf file because this deletion is executed upon installation and depends on the current font names.
17+
*HackWindowsInstaller* will delete any *(Fontname)_X.ttf* for each font file it installs. However, if a font file was renamed, *HackWindowsInstaller* won’t delete the old _0.ttf file because this deletion is executed upon installation and depends on the current font names.
1818

1919
##Some fonts can be locked when in use
2020

2121
As soon as a font is used, the TTF file for it is locked and can’t be updated to a newer version.
2222

23-
*OSFontPack.exe* will try to replace any locked file five times and if this doesn’t work, it will use `PendingFileOperations` to replace the file in question upon next boot.
23+
*HackWindowsInstaller* will try to replace any locked file five times and if this doesn’t work, it will use `PendingFileOperations` to replace the file in question upon next boot.
2424

2525
##The FontCache service can lock fonts during installation
2626

2727
For performance reasons, Windows includes a cache for all installed fonts. Because it is sometime to “eager” to read the information from a file, the installation can fail because the file is locked during the installation.
2828

29-
*OSFontPack.exe* will stop `FontCache` (and `FontCache3.0.0.0` for .NET if it exists) during installation.
29+
*HackWindowsInstaller* will stop `FontCache` (and `FontCache3.0.0.0` for .NET if it exists) during installation.
3030
##The font data in the registry and the font files can be different
3131

3232
Depending what else has gone wrong, the font registration data (Name and File) inside the registry can be different from the actual fonts installed in C:\WINDOWS\FONTS. When this happens, the fonts can go “crazy” - see issue [#152 for Hack](https://github.com/chrissimpkins/Hack/issues/152).
3333

34-
*OSFontPack.exe* will ensure that the files and the registration data are exactly as desired and reinstall the font if this is not the case.
34+
*HackWindowsInstaller* will ensure that the files and the registration data are exactly as desired and reinstall the font if this is not the case.
3535

3636
##A new font is not visible directly after installation
3737

3838
When a new font is installed, Windows expects the broadcast message WM_FONTCHANGE before the font can be used.
3939

40-
*OSFontPack.exe* will sent this message if any new font is installed. However, some applications do not react on this message so a restart will be requested when the installation is finished.
40+
*HackWindowsInstaller* will sent this message if any new font is installed. However, some applications do not react on this message so a restart will be requested when the installation is finished.
4141

4242
##A font cannot be updated without restart
4343

4444
The [MSDN docs](https://msdn.microsoft.com/en-us/library/windows/desktop/dd183326%28v=vs.85%29.aspx) say that a call to RemoveFontResource() requires a restart before this font is really removed. However, it does not say anything if updating a font also requires this. Based on the current findings, I think it is required.
4545

46-
*OSFontPack.exe* will always request a restart when the installation is finished.
46+
*HackWindowsInstaller* will always request a restart when the installation is finished.
4747

4848

4949
##Not fixed: The cache files of the FontCache service can be corrupted
5050

51-
This issue is not yet fixed by *OSFontPack.exe* mostly because I never experienced this defect.
51+
This issue is not yet fixed by *HackWindowsInstaller* mostly because I never experienced this defect.
5252

5353
Both font cache services (FontCache and FontCache3.0.0.0) use cache files stored in *C:\Windows\ServiceProfiles\LocalService\AppData\Local\*. When these files become corrupted, the services might hang and the entire font handling goes haywire.
5454

@@ -58,6 +58,7 @@ After that, restart the computer.
5858

5959

6060
----------
61-
2016-03-30
61+
2016-04-25
62+
6263
~Michael 'Tex' Hex
6364

0 commit comments

Comments
 (0)