Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

MissingManifestResourceException-Klasse

 

Veröffentlicht: Oktober 2016

Die Ausnahme, die ausgelöst wird, wenn die Hauptassembly enthält keine Ressourcen für die neutrale Kultur, und eine entsprechende Satellitenassembly fehlt.

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

System.Object
  System.Exception
    System.SystemException
      System.Resources.MissingManifestResourceException

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class MissingManifestResourceException : SystemException

NameBeschreibung
System_CAPS_pubmethodMissingManifestResourceException()

Initialisiert eine neue Instanz der MissingManifestResourceException-Klasse mit Standardeigenschaften.

System_CAPS_protmethodMissingManifestResourceException(SerializationInfo, StreamingContext)

Initialisiert anhand von serialisierten Daten eine neue Instanz der MissingManifestResourceException-Klasse.

System_CAPS_pubmethodMissingManifestResourceException(String)

Initialisiert eine neue Instanz der MissingManifestResourceException-Klasse mit der angegebenen Fehlermeldung.

System_CAPS_pubmethodMissingManifestResourceException(String, Exception)

Initialisiert eine neue Instanz der MissingManifestResourceException-Klasse mit einer angegebenen Fehlermeldung und einem Verweis auf die innere Ausnahme, die diese Ausnahme ausgelöst hat.

NameBeschreibung
System_CAPS_pubpropertyData

Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen über die Ausnahme bereitstellen.(Geerbt von „Exception“.)

System_CAPS_pubpropertyHelpLink

Ruft einen Link zur Hilfedatei ab, die dieser Ausnahme zugeordnet ist, oder legt einen Link fest.(Geerbt von „Exception“.)

System_CAPS_pubpropertyHResult

Ruft HRESULT ab oder legt HRESULT fest. Dies ist ein codierter Wert, der einer bestimmten Ausnahme zugeordnet ist.(Geerbt von „Exception“.)

System_CAPS_pubpropertyInnerException

Ruft die Exception-Instanz ab, die die aktuelle Ausnahme verursacht hat.(Geerbt von „Exception“.)

System_CAPS_pubpropertyMessage

Ruft eine Meldung ab, die die aktuelle Ausnahme beschreibt.(Geerbt von „Exception“.)

System_CAPS_pubpropertySource

Gibt den Namen der Anwendung oder des Objekts zurück, die bzw. das den Fehler verursacht hat, oder legt diesen fest.(Geerbt von „Exception“.)

System_CAPS_pubpropertyStackTrace

Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames in der Aufrufliste ab.(Geerbt von „Exception“.)

System_CAPS_pubpropertyTargetSite

Ruft die Methode ab, die die aktuelle Ausnahme auslöst.(Geerbt von „Exception“.)

NameBeschreibung
System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodGetBaseException()

Gibt beim Überschreiben in einer abgeleiteten Klasse eine Exception zurück, die die ursprüngliche Ursache für eine oder mehrere nachfolgende Ausnahmen ist.(Geerbt von „Exception“.)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetObjectData(SerializationInfo, StreamingContext)

Legt beim Überschreiben in einer abgeleiteten Klasse die SerializationInfo mit Informationen über die Ausnahme fest.(Geerbt von „Exception“.)

System_CAPS_pubmethodGetType()

Ruft den Laufzeittyp der aktuellen Instanz ab.(Geerbt von „Exception“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethodToString()

Erstellt eine Zeichenfolgendarstellung der aktuellen Ausnahme und gibt diese zurück.(Geerbt von „Exception“.)

NameBeschreibung
System_CAPS_proteventSerializeObjectState

Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmezustandsobjekt zu erstellen, das serialisierte Daten für die Ausnahme enthält.(Geerbt von „Exception“.)

In desktop-apps MissingManifestResourceException wird ausgelöst, wenn der Versuch zum Abrufen einer Ressource fehlschlägt, weil es sich bei der Ressourcensatz für die neutrale Kultur nicht von einer bestimmten Assembly geladen werden konnte. Obwohl die Ausnahme ausgelöst wird, wenn Sie versuchen, eine bestimmte Ressource abrufen, wird es durch das Fehlschlagen der Ressource gefunden, anstatt den Ressourcensatz nicht geladen verursacht.

System_CAPS_noteHinweis

Weitere Informationen finden Sie im Abschnitt "Behandeln von einer MissingManifestResourceException-Ausnahme" in der ResourceManager Thema-Klasse.

Die Hauptursachen der Ausnahme sind:

  • Der Ressourcensatz wird nicht durch seinem vollqualifizierten Namen identifiziert. Z. B. wenn die baseName Parameter im Aufruf der ResourceManager.ResourceManager(String, Assembly) -Methode gibt den Stammnamen des Ressourcensatzes ohne Namespace, jedoch der Ressourcensatz ein Namespace zugewiesen wird, wenn sie in der Assembly, die den Aufruf von gespeichert ist die ResourceManager.GetString Methode löst diese Ausnahme aus.

    Wenn Sie die RESOURCES-Datei enthält die Standardkultur Ressourcen in die ausführbare Datei eingebettet und von Ihrer app auslösen ein MissingManifestResourceException, können Sie ein Reflektionstool, z. B. den vollqualifizierten Namen der Ressource zu bestimmen. In Ildasm abrufen, doppelklicken klicken Sie auf der ausführbare Datei MANIFEST Bezeichnung an, öffnen die MANIFEST Fenster. Ressourcen werden als .mresource Elemente und werden nach externen Assemblyverweise und benutzerdefinierte Attribute der Assemblyebene aufgeführt. Sie können auch das folgende einfache Dienstprogramm kompilieren, das den vollqualifizierten Namen von eingebetteten Ressourcen in der Assembly aufgelistet sind, deren Name als Befehlszeilenparameter an ihn übergeben wird.

    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();
       }
    }
    
  • Sie identifizieren den Ressourcensatz ihrer Erweiterung und den Dateinamen der Ressource (zusammen mit den optionalen Namespace) und nicht anhand des Dateinamens und des Stammelements allein. Z. B. diese Ausnahme wird ausgelöst, wenn der Ressourcensatz der neutralen Kultur mit dem Namen GlobalResources und geben Sie den Wert GlobalResources.resources (anstelle von GlobalResources), die baseName Parameter von der ResourceManager.ResourceManager(String, Assembly) Konstruktor.

  • Kulturspezifische Ressourcensatz, der in einem Methodenaufruf angegeben wird, kann nicht gefunden werden, und der Satz Fallbackressource kann nicht geladen werden. Beispielsweise wird, wenn Sie die Satellitenassemblys für die englischen (USA) und Russische Föderation (Russisch) Kulturen erstellen aber Sie keinen Ressourcensatz für die neutrale Kultur bereitstellen, diese Ausnahme ausgelöst, wenn Ihre Anwendung aktuelle Kultur Englisch (Großbritannien) ist.

MissingManifestResourceException verwendet HRESULT COR_E_MISSINGMANIFESTRESOURCE mit den Wert 0 x 80131532.

MissingManifestResourceException verwendet die standardmäßige Equals Implementierung, die Verweisgleichheit unterstützt.

Eine Liste der anfänglichen Eigenschaftenwerte für eine Instanz von MissingManifestResourceException, finden Sie unter der MissingManifestResourceException Konstruktoren.

System_CAPS_noteHinweis

Es wird empfohlen, dass Sie einen neutralen Satz von Ressourcen in Ihrer Hauptassembly enthalten, damit Ihre app keine Fehler, wenn eine Satellitenassembly nicht verfügbar ist.

Im Gegensatz zu desktop-apps, die lokalisierte Ressourcen in Satellitenassemblys bereitstellen, und speichern die Ressourcen der neutralen Kultur in der Regel in die Hauptassembly, Windows 8.x Store apps Bereitstellen von Ressourcen für mehrere Kulturen, einschließlich der neutralen Kultur in eine einzelne Paketdatei Ressource Index (PRI). Daher in einer Windows 8.x Store -app, wenn Ressourcen für die bevorzugte Kultur gefunden werden können, die MissingManifestResourceException unter einem der folgenden Situationen ausgelöst:

  • Die Anwendung schließt eine PRI-Datei nicht, oder die PRI-Datei konnte nicht geöffnet werden.

  • Die app PRI-Datei enthält keinen Ressourcensatz für den angegebenen Namen.

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: