none
CompositeFontParser Fail after installing .NET Framework Update

    Question

  • Hello all,

    I have encountered an exception in our client program (C#) when calling Fonts.SystemFontFamilies (System.Windows.Media.Fonts) using a Windows 7 system:

    -> System.IO.FileFormatException: No FontFamily element found in FontFamilyCollection that matches current OS or greater: Windows7SP1

    Using Windows 10, this problem does not occur. Also, rolling back the latest security updates on the Windows 7 systems fixes that error, so after some investigation, I think the most probable package that is connected to that exception is KB4055532, which is a .NET 4.7.1 security update for Windows 7 / Server 2008 released on January 9th.

    Could that be a bug in the mentioned security update?

    Kind regards,

    Frank Nanninga



    Thursday, January 11, 2018 10:22 AM

All replies

  • Hallo Frank!

    I can more or less confirm your observation!

    After installing KB4055532 Windows Powershell 5.1 ISE cannot be started as it crashes with System.IO.FileFormatException too. This is on Windows 7 SP1 with all important updates installed.
    When this update is uninstalled, Powershell 5.1 ISE can be started without problems.
    I had this same problem on about 8 computers yesterday at work and at my personal computer at home.

    Kind regards,
    Patrik Ehringer

    Thursday, January 11, 2018 11:50 AM
  • KB4055002 has similar problem with fonts on Windows 7.

    Thursday, January 11, 2018 1:17 PM
  • KB4055002 has similar problem with fonts on Windows 7.

    This is the KB you'll see on Windows 7 (only) of you install KB4055532.

    But yes, this is the relevant update.

    Thursday, January 11, 2018 2:05 PM
  • Hi FrankNanninga,

    Thank you for posting here.

    For your question, what is the exception?

    I use Win7 with Visual Studio 2017 to test the Fonts.SystemFontFamilies Property without installing KB4055532. Based on my test, it is not a bug in the mentioned security update.

      private void button1_Click(object sender, EventArgs e)
            {
                FillFontComboBox(comboBox1);
            }
            public void FillFontComboBox(ComboBox comboBoxFonts)
            {
                // Enumerate the current set of system fonts,
                // and fill the combo box with the names of the fonts.
                foreach (System.Windows.Media.FontFamily fontFamily in Fonts.SystemFontFamilies)
                {
                    // FontFamily.Source contains the font family name.
                    comboBoxFonts.Items.Add(fontFamily.Source);
                }
    
                comboBoxFonts.SelectedIndex = 0;
            }
    

    Please add reference of PresentationCore.dll from C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0.

    Best Regards,

    Wendy


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    Friday, January 12, 2018 6:55 AM
  • Hi Wendy!

    It IS a bug caused by this update.

    This update replaces at least
    'GlobalUserInterface.CompositeFont' in
    'c:\Windows\Microsoft.NET\Framework\v4.0.30319\WPF\Fonts' and 'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\WPF\Fonts'
    with a newer version which seems to miss information for Windows 7.
    It seems that all programs which are based on WPF and use 'System.Windows.Media.Fonts' and somehow try to find a FontFamily are affected - with many of them just crashing (because no font family can be found because of missing Windows 7 entry in 'GlobalUserInterface.CompositeFont').
    In the meantime one can find a lot of reports on the websites of affected programs.

    Hope this helps,

    Best regards,
    Patrik

    Friday, January 12, 2018 8:38 AM
  • Yes I confirm the behaviour described by Patrik
    We have the same issue on our application and more and more customers are impacted!!

    The update corrups the framework installation and the only workaround is to uninstall the KB (and on some Pcs to reinstall the .NET framework)

    Best regards

    Stéphane

    Friday, January 12, 2018 9:23 AM
  • Microsoft released an official statement about this issue here (includes workarounds): https://github.com/dotnet/announcements/issues/53

    Stéphane

    Friday, January 12, 2018 9:57 AM
  • @Stéphane

    Thanks for this update!

    Friday, January 12, 2018 10:11 AM
  • Yes - thank you for the update Stéphane!
    Friday, January 12, 2018 3:08 PM