Dateinamen der Resourcen auswerten

CopWorker

Erfahrenes Mitglied
Hallo zusammen,

meine Ressourcen beinhalten Bilder welche von bestimmten Bitmaps importiert wurden.
Die Ressourcen (Bilder) kann ich unter Projekt | Projekteigenschaften | Ressourcen - Register "Bilder" erkennen.
Es steht auch bei jedem Bild der Name dabei wie das Bild als Dateiname trägt.

Jetzt geht´s los.
Mein Gedanke war, dass ich über den "ResourceManager" an eine Liste rankomme in der ich die Bilder bzw. deren Namen finde.
Hierzu folgender Code:
C#:
Image screenImage = new Bitmap(1920, 1080);
ResourceManager rm = new ResourceManager("Properties.Resources", Assembly.GetExecutingAssembly());
if (rm.GetObject("Bitmap123") != null)
    screenImage = Image.FromFile("Bitmap123");

Leider stürtzt hier der Debugger an der "if" Abfrage ab.
Fehlermeldung:
System.Resources.MissingManifestResourceException
HResult=0x80131532
Nachricht = Für die angegebene Kultur oder die neutrale Kultur konnten keine Ressourcen gefunden werden. Stellen Sie sicher, dass Properties.Resources.resources beim Kompilieren richtig in die Assembly PCS_StartupView eingebettet wurde, oder dass die erforderlichen Satellitenassemblys geladen werden können und vollständig signiert sind.

Ich nehme aber doch an, dass die Bilder richtig in die Ressourcen eingebettet sind.
Ich verwende die Bilder ja auch an anderen Stellen mit folgendem Code:
C#:
Image imOrigin = _BLoadImage ? Image.FromFile(strBitmapFilePath) : Properties.Resources.PCSStartupViewENG;
this.BackgroundImage = new Bitmap(imOrigin, this.Width, this.Height);

Wenn jemand eine Rat hat!?
Vielen Dank.

Grüße von CopWorker
 

Spyke

Premium-User
Im Konstruktur die angabe "Properties.Resources" scheint mir nicht ganz richtig, da muss der vollständige Name mit Namespace hin, mir scheints du hast nur einen Teil angegeben.

Zum Bitmap123, öffne mal die Ressourcen Datei und schau mal ob der Name der Ressource auch wirklich wie der Dateiname ist (die Ressourcen können abweichende Namen haben)

Aber ich vermute mal dein Hauptproblem wird erstmal im Konstruktor die Angabe sein.
 

Neue Beiträge