This documentation is archived and is not being maintained.

MissingSatelliteAssemblyException Class

The exception that is thrown when the satellite assembly for the resources of the neutral culture is missing.

Namespace:  System.Resources
Assembly:  mscorlib (in mscorlib.dll)

public class MissingSatelliteAssemblyException : SystemException

A MissingSatelliteAssemblyException is thrown when the satellite assembly for the culture specified in the NeutralResourcesLanguageAttribute attribute is missing.

MissingSatelliteAssemblyException uses the HRESULT COR_E_MISSINGSATELLITEASSEMBLY, which has the value 0x80131536.

MissingSatelliteAssemblyException uses the default Equals implementation, which supports reference equality.

For a list of initial property values for an instance of the MissingSatelliteAssemblyException class, see the MissingSatelliteAssemblyException constructors.


It is strongly recommended that your main assembly contain a neutral set of resources so that if a satellite assembly is unavailable, your application will display some acceptable behavior.

The following code example displays the neutral language, fallback location, and fallback culture for a resource manager that is created for the current user interface culture or a culture specified on the command line.

using System;
using System.Resources;
using System.Globalization;
using System.Threading;

[assembly: NeutralResourcesLanguageAttribute("de" , UltimateResourceFallbackLocation.Satellite)]

public class Demo
        public static void Main(string[] args) {
			// If a specific culture is passed in through the command line, use that -- otherwise 
			// just use the current ui culture
			String strCulture = "";
			if (args.Length == 1) 
				strCulture = args[0];
		if (strCulture != "") 
			try {
				Thread.CurrentThread.CurrentUICulture = new CultureInfo(strCulture);
			catch (ArgumentException e){
				Console.WriteLine(e.Message, "Bad command-line argument");
			Console.WriteLine("Current culture is: {0}", CultureInfo.CurrentUICulture.ToString());

		ResourceManager rm;

			rm = new ResourceManager("MyStrings", typeof(Demo).Assembly);
			NeutralResourcesLanguageAttribute attr = new NeutralResourcesLanguageAttribute("de", UltimateResourceFallbackLocation.Satellite);
			Console.WriteLine("Neutral language = " + rm.GetString("Language") + ", Fallback location = " + attr.Location.ToString() + ", Fallback culture = " + attr.CultureName.ToString());

		catch (MissingSatelliteAssemblyException e){
			Console.WriteLine(e.Message, "Unable to locate satellite Assembly");




Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0