MissingManifestResourceException Clase

Definición

Excepción que se produce si el ensamblado principal no contiene los recursos de la referencia cultural neutral y falta un ensamblado satélite apropiado.The exception that is thrown if the main assembly does not contain the resources for the neutral culture, and an appropriate satellite assembly is missing.

public ref class MissingManifestResourceException : SystemException
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class MissingManifestResourceException : SystemException
type MissingManifestResourceException = class
    inherit SystemException
Public Class MissingManifestResourceException
Inherits SystemException
Herencia
MissingManifestResourceException
Atributos

Comentarios

Aplicaciones .NET.NET apps

En .NET Framework y en las aplicaciones de MissingManifestResourceException .net Core, se produce cuando se produce un error al intentar recuperar un recurso porque no se pudo cargar el conjunto de recursos para la referencia cultural neutra desde un ensamblado determinado.In .NET Framework and .NET Core apps, MissingManifestResourceException is thrown when the attempt to retrieve a resource fails because the resource set for the neutral culture could not be loaded from a particular assembly. Aunque la excepción se produce cuando se intenta recuperar un recurso concreto, se debe a un error al cargar el conjunto de recursos en lugar de a un error al buscar el recurso.Although the exception is thrown when you try to retrieve a particular resource, it is caused by the failure to load the resource set rather than the failure to find the resource.

Nota

Para obtener más información, vea la sección "controlar una excepción MissingManifestResourceException" en ResourceManager el tema de la clase.For additional information, see the "Handling a MissingManifestResourceException Exception" section in the ResourceManager class topic.

Entre las causas principales de la excepción se incluyen las siguientes:The main causes of the exception include the following:

  • El nombre completo no identifica el conjunto de recursos.The resource set is not identified by its fully qualified name. Por ejemplo, si el baseName parámetro de la llamada ResourceManager.ResourceManager(String, Assembly) al método especifica el nombre de la raíz del conjunto de recursos sin un espacio de nombres, pero el conjunto de recursos tiene asignado un espacio de nombres cuando se almacena en su ensamblado ResourceManager.GetString , la llamada al método. produce esta excepción.For example, if the baseName parameter in the call to the ResourceManager.ResourceManager(String, Assembly) method specifies the root name of the resource set without a namespace, but the resource set is assigned a namespace when it is stored in its assembly, the call to the ResourceManager.GetString method throws this exception.

    Si ha incrustado el archivo. Resources que contiene los recursos de la referencia cultural predeterminada en el ejecutable y la aplicación MissingManifestResourceExceptionestá iniciando, puede usar una herramienta de reflexión como el desensamblador de Il (Ildasm. exe) para determinar el nombre completo nombre del recurso.If you have embedded the .resources file that contains the default culture's resources in your executable and your app is throwing a MissingManifestResourceException, you can use a reflection tool such as the IL Disassembler (Ildasm.exe) to determine the fully qualified name of the resource. En ILDasm, haga doble clic en la etiqueta del manifiesto del archivo ejecutable para abrir la ventana de manifiesto .In ILDasm, double click the executable's MANIFEST label to open the MANIFEST window. Los recursos aparecen .mresource como elementos y se enumeran después de las referencias de ensamblado externo y los atributos personalizados de nivel de ensamblado.Resources appear as .mresource items and are listed after external assembly references and custom assembly-level attributes. También puede compilar la siguiente utilidad sencilla, que muestra los nombres completos de los recursos incrustados en el ensamblado cuyo nombre se le pasa como parámetro de línea de comandos.You can also compile the following simple utility, which lists the fully qualified names of embedded resources in the assembly whose name is passed to it as a command-line parameter.

    using System;
    using System.IO;
    using System.Reflection;
    using System.Resources;
    
    public class Example
    {
       public static void Main()
       {
          if (Environment.GetCommandLineArgs().Length == 1) { 
             Console.WriteLine("No filename.");
             return;
          }
          
          string filename = Environment.GetCommandLineArgs()[1].Trim();
          // Check whether the file exists.
          if (! File.Exists(filename)) {
             Console.WriteLine("{0} does not exist.", filename);
             return;
          }   
          
          // Try to load the assembly.
          Assembly assem = Assembly.LoadFrom(filename);
          Console.WriteLine("File: {0}", filename);
             
          // Enumerate the resource files.
          string[] resNames = assem.GetManifestResourceNames();
          if (resNames.Length == 0)
             Console.WriteLine("   No resources found.");
    
          foreach (var resName in resNames)
             Console.WriteLine("   Resource: {0}", resName.Replace(".resources", ""));
    
          Console.WriteLine();
       }
    }
    
    Imports System.IO
    Imports System.Reflection
    Imports System.Resources
    
    Module Example
       Public Sub Main()
          If Environment.GetCommandLineArgs.Length = 1 Then 
             Console.WriteLine("No filename.")
             Exit Sub
          End If
          Dim filename As String = Environment.GetCommandLineArgs(1).Trim()
          ' Check whether the file exists.
          If Not File.Exists(filename) Then
             Console.WriteLine("{0} does not exist.", filename)
             Exit Sub
          End If   
          
          ' Try to load the assembly.
          Dim assem As Assembly = Assembly.LoadFrom(filename)
          Console.WriteLine("File: {0}", filename)
             
          ' Enumerate the resource files.
          Dim resNames() As String = assem.GetManifestResourceNames()
          If resNames.Length = 0 Then
             Console.WriteLine("   No resources found.")
          End If
          For Each resName In resNames
             Console.WriteLine("   Resource: {0}", resName.Replace(".resources", ""))
          Next
          Console.WriteLine()
       End Sub
    End Module
    
  • Identifique el conjunto de recursos por su nombre de archivo de recursos (junto con su espacio de nombres opcional) y su extensión de archivo en lugar de por su espacio de nombres y nombre de archivo raíz solo.You identify the resource set by its resource file name (along with its optional namespace) and its file extension rather than by its namespace and root file name alone. Por ejemplo, esta excepción se produce si el conjunto de recursos de la referencia cultural GlobalResources neutra se denomina y se proporciona GlobalResources.resources un valor de ( GlobalResources baseName en lugar de) al parámetro ResourceManager.ResourceManager(String, Assembly) del constructor.For example, this exception is thrown if the neutral culture's resource set is named GlobalResources and you supply a value of GlobalResources.resources (instead of GlobalResources) to the baseName parameter of the ResourceManager.ResourceManager(String, Assembly) constructor.

  • No se puede encontrar el conjunto de recursos específico de la referencia cultural que se identifica en una llamada al método y no se puede cargar el conjunto de recursos de reserva.The culture-specific resource set that is identified in a method call cannot be found, and the fallback resource set cannot be loaded. Por ejemplo, si crea ensamblados satélite para las referencias culturales de inglés (Estados Unidos) y Rusia (Ruso) pero no proporciona un conjunto de recursos para la referencia cultural neutra, se produce esta excepción si la referencia cultural actual de la aplicación es inglés (Gran Bretaña).For example, if you create satellite assemblies for the English (United States) and Russia (Russian) cultures but you fail to provide a resource set for the neutral culture, this exception is thrown if your app's current culture is English (Great Britain).

MissingManifestResourceExceptionusa HRESULT COR_E_MISSINGMANIFESTRESOURCE, que tiene el valor 0x80131532.MissingManifestResourceException uses the HRESULT COR_E_MISSINGMANIFESTRESOURCE, which has the value 0x80131532.

MissingManifestResourceExceptionusa la implementación Equals predeterminada, que admite la igualdad de referencia.MissingManifestResourceException uses the default Equals implementation, which supports reference equality.

Para obtener una lista de valores de propiedad iniciales de una instancia de MissingManifestResourceException, consulte el MissingManifestResourceException constructores.For a list of initial property values for an instance of MissingManifestResourceException, see the MissingManifestResourceException constructors.

Nota

Se recomienda incluir un conjunto neutro de recursos en el ensamblado principal, por lo que la aplicación no producirá un error si un ensamblado satélite no está disponible.We recommend that you include a neutral set of resources in your main assembly, so your app won't fail if a satellite assembly is unavailable.

Aplicaciones Plataforma universal de Windows (UWP)Universal Windows Platform (UWP) apps

Las aplicaciones para UWP implementan recursos para varias referencias culturales, incluida la referencia cultural neutra, en un archivo de índice de recursos de paquete único (. PRI).UWP apps deploy resources for multiple cultures, including the neutral culture, in a single package resource index (.pri) file. Como resultado, en una aplicación de UWP, si no se encuentran los recursos para la referencia cultural preferida, MissingManifestResourceException se produce en cualquiera de las siguientes condiciones:As a result, in a UWP app, if resources for the preferred culture cannot be found, the MissingManifestResourceException is thrown under either of the following conditions:

  • La aplicación no incluye un archivo. PRI o no se pudo abrir el archivo. PRI.The app does not include a .pri file, or the .pri file could not be opened.

  • El archivo. PRI de la aplicación no contiene un conjunto de recursos para el nombre de raíz especificado.The app's .pri file does not contain a resource set for the given root name.

Constructores

MissingManifestResourceException()

Inicializa una nueva instancia de la clase MissingManifestResourceException con propiedades predeterminadas.Initializes a new instance of the MissingManifestResourceException class with default properties.

MissingManifestResourceException(SerializationInfo, StreamingContext)

Inicializa una nueva instancia de la clase MissingManifestResourceException a partir de datos serializados.Initializes a new instance of the MissingManifestResourceException class from serialized data.

MissingManifestResourceException(String)

Inicializa una nueva instancia de la clase MissingManifestResourceException con el mensaje de error especificado.Initializes a new instance of the MissingManifestResourceException class with the specified error message.

MissingManifestResourceException(String, Exception)

Inicializa una nueva instancia de la clase MissingManifestResourceException con el mensaje de error especificado y una referencia a la excepción interna que representa la causa de esta excepción.Initializes a new instance of the MissingManifestResourceException class with a specified error message and a reference to the inner exception that is the cause of this exception.

Propiedades

Data

Obtiene una colección de pares clave-valor que proporcionan más información definida por el usuario sobre la excepción.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Heredado de Exception)
HelpLink

Obtiene o establece un vínculo al archivo de ayuda asociado a esta excepción.Gets or sets a link to the help file associated with this exception.

(Heredado de Exception)
HResult

Obtiene o establece HRESULT, un valor numérico codificado que se asigna a una excepción específica.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Heredado de Exception)
InnerException

Obtiene la instancia Exception que produjo la excepción actual.Gets the Exception instance that caused the current exception.

(Heredado de Exception)
Message

Obtiene un mensaje que describe la excepción actual.Gets a message that describes the current exception.

(Heredado de Exception)
Source

Devuelve o establece el nombre de la aplicación o del objeto que generó el error.Gets or sets the name of the application or the object that causes the error.

(Heredado de Exception)
StackTrace

Obtiene una representación de cadena de los marcos inmediatos en la pila de llamadas.Gets a string representation of the immediate frames on the call stack.

(Heredado de Exception)
TargetSite

Obtiene el método que produjo la excepción actual.Gets the method that throws the current exception.

(Heredado de Exception)

Métodos

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetBaseException()

Cuando se reemplaza en una clase derivada, devuelve la clase Exception que representa la causa principal de una o más excepciones posteriores.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Heredado de Exception)
GetHashCode()

Sirve como función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetObjectData(SerializationInfo, StreamingContext)

Cuando se reemplaza en una clase derivada, establece SerializationInfo con información sobre la excepción.When overridden in a derived class, sets the SerializationInfo with information about the exception.

(Heredado de Exception)
GetType()

Obtiene el tipo de tiempo de ejecución de la instancia actual.Gets the runtime type of the current instance.

(Heredado de Exception)
MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
ToString()

Crea y devuelve una representación de cadena de la excepción actual.Creates and returns a string representation of the current exception.

(Heredado de Exception)

Eventos

SerializeObjectState

Ocurre cuando una excepción se serializa para crear un objeto de estado de excepción que contenga datos serializados sobre la excepción.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Heredado de Exception)

Se aplica a

Consulte también: