C#: Embedded Resources speichern

Ich denke, dass fast jeder schonmal mit Resourcen in seinem Programm gearbeitet hat. Bei den meisten Applikation dienen die Resourcen als Sammlung aller nötigen Dateien, um diese anschließend in den Applikationspfad zu kopieren, wie zum Beispiel Icons, XAML oder Konfigurationsdateien.

An dieser Stelle möchte ich Euch zeigen, wie einfach es, eingebettete Resourcen wieder aus dem Programm herauszuholen und an einem beliebigen Ort zu speichern.

Bei meiner Applikation habe ich einige Zeit gesucht, was hier wohl die “Best Practise” zum Speichern einer embedded Resource ist und bin, dank Hilfe von Günther Foidl auf eine schnelle und saubere Methodik gestoßen. Zwar habe ich zuvor einige Foren bemüht, aber keine Antwort auf diese Konkrete Frage gefunden, dabei ist dies, wenn man es recht bedenkt, ein wirklich simpler und nachvollziehbarer Vorgang.

Zuerst bettet Ihr also eine Resource im Visual Studio ein. Hierbei spielt es generell keine Rolle, was es für eine Resource ist. In meinem Beispiel ist es eine .ZIP Datei.

File.WriteAllBytes(@"C:\test.zip", Namespace.Properties.Resource.test);

Seid Euch nur im Klaren darüber, dass Resourcen im Visual Studio ohne Endung gespeichert werden. Aus diesem Grund findet Ihr in obiger Zeile auch nirgends das .ZIP, weil die Resource einfach “test” heißt. Und das war es dann auch schon. So einfach könnt Ihr jegliche Art von Resourcen an einen beliebigen Ort kopieren, da hier Byte-Weise geschrieben wird.

Add your comment

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code lang=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" extra="">

THE SOURCE OF CODE DOMINATION