System.NotSupportedException When Rendering Images in WPF Application

Applies to: .NET Framework 4.5

Symptoms


When running a .NET 3.x or 4.x WPF based application on a specific computer, attempting to render any image fails with the following exception and call stack.

System.NotSupportedException: No imaging component suitable to complete this operation was found.

at System.Windows.Media.Imaging.BitmapDecoder.SetupDecoderFromUriOrStream()
at System.Windows.Media.Imaging.BitmapDecoder.CreateFromUriOrStream()
at System.Windows.Media.Imaging.BitmapFrame.CreateFromUriOrStream()
at Sstem.Windows.Media.ImageSourceConverter.ConvertFrom()
at System.ComponentModel.TypeConverter.ConvertFromString()
at System.Windows.Markup.XamlTypeMapper.ParseProperty() 

This occurs in any simple WPF application attempting to render the same image type.

Cause


The Windows Imaging Component (WIC) installation is damaged on the computer(s) exhibiting the problem.

Resolution


On Windows XP and Windows Server 2003 computers, you may be able to resolve this problem by installing the standalone WIC redistributable from the following download site. Windows Imaging Component For Windows Vista and later operating systems, try repairing the operating system installation. 

More Information


The WPF imaging stack is dependent upon the Windows Imaging Component (WIC) on the operating system. If any simple WPF application encounters this exception when rendering the same image(s), then it is likely because the WIC installation is damaged on the operating system. On Windows XP and Windows Server 2003, the Windows Imaging Component is not part of the core operating system and will be installed by the .NET Framework installation. On Windows Vista and later operating systems, the operating system includes WIC.