Entwickler-Ecke
Sonstiges (.NET) - Eingebettete Resource als Datei speichern Fehler
PersisXS - So 01.08.10 02:07
Titel: Eingebettete Resource als Datei speichern Fehler
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32:
| using System; using System.Collections.Generic; using System.Text; using System.IO; using System.Reflection; using System.Deployment; using System.Resources; using System.Windows.Forms;
namespace DataExt { class Program { static void Main(string[] args) {
using (FileStream outputStream = new FileStream(Path.GetTempPath() + "/File.Data", FileMode.Create, FileAccess.Write)) { String pathToResource = "DataExt.Ressources.File.Data"; System.Reflection.Assembly a = System.Reflection.Assembly.GetExecutingAssembly(); Stream inputStream = a.GetManifestResourceStream(pathToResource); int cnt = 0; const int LEN = 4096; byte[] buffer = new byte[LEN]; while ((cnt = inputStream.Read(buffer, 0, LEN)) != 0) outputStream.Write(buffer, 0, cnt);
} } } } |
Hallo erstmal,
Könnte mir bitte einer sagen was hier oben falsch läuft?
Ich bekomme immer ein NullReferenceException an der While-Schleife!
Habe ich den falschen Resourcen-Pfad angegeben?
Danke im Vorraus,
Ich hoffe es geht klar, da das mein erster Beitrag ist.
Lg,
Th69 - So 01.08.10 09:30
Dann prüfe doch einfach im Debugger, welche Variable 'null' ist - ich tippe auf 'inputStream'.
Die MSDN sagt zum Rückgabewert von 'GetManifestResourceStream':
Zitat: |
Ein Stream, der die Manifestressource darstellt; null (Nothing in Visual Basic), wenn während des Kompilierens keine Ressourcen angegeben wurden oder wenn die Ressource für den Aufrufer nicht sichtbar ist.
|
Könnte also dann wirklich ein falscher Pfad sein: "Resources" (im englischen nur mit einem s, im deutschen bzw. französischen dagegen mit 2 -)
PersisXS - So 01.08.10 12:07
Ja ist 'inputStream' aber ich habe schon jede logische Möglichkeit wie die Resource heißen könnte ausprobiert.
Bis jetzt leider ohne Erfolg.
Th69 - So 01.08.10 12:42
Schau einfach mal in die zugehörige 'Resources.Designer.cs'...
PersisXS - So 01.08.10 15:26
Jap jetzt läufts. Pfadangabe war falsch^^
Danke
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!