Ich habe eine INF-Datei als eine eingebettete Ressource in meinem C# -Projekt gespeichert. Ich versuche, diese Datei bei Bedarf an einem lokalen Speicherort zu speichern. Ich benutze diese Methode.Kopieren von eingebetteten Ressourcen als Datei auf Festplatte in C#
public static void SaveResourceToDisk(string ResourceName, string FileToExtractTo)
{
Stream s = Assembly.GetExecutingAssembly().GetManifestResourceStream(ResourceName);
FileStream resourceFile = new FileStream(FileToExtractTo, FileMode.Create);
byte[] b = new byte[s.Length + 1];
s.Read(b, 0, Convert.ToInt32(s.Length));
resourceFile.Write(b, 0, Convert.ToInt32(b.Length - 1));
resourceFile.Flush();
resourceFile.Close();
resourceFile = null;
}
Wenn ich versuche, diese Methode aufzurufen (zusammen mit dem Namespace-Namen den Namen der Ressource vorbei), erhalte ich die Fehlermeldung:
Object reference not set to an instance of an object
Was mache ich falsch hier?
Wenn Sie den vollständigen Fehler (einschließlich Zeilennummer, übereinstimmend mit der Zeilennummer in Ihrem Code) gepostet haben, kann dies bei der Diagnose des Problems hilfreich sein. –
Ein Tipp zur Seite: Verwenden Sie das Schlüsselwort "using" für Ihre Objekte, um sie automatisch zu entfernen. –
Duplikat von http://stackoverflow.com/questions/864140/write-file-from-assembly-resource-stream-to-disk, das ein nützlicheres Codebeispiel enthält. – pennyrave