Ich versuche, eine leere Access-Datenbank (.mdb) als Ressource in meiner Anwendung zu speichern. Ich möchte dann das Dateisystem ausschreiben und mit Tabellendefinitionen usw. füllen. Das Problem, das ich in Visual Studio 2005 und meiner C # -Anwendung habe, besteht darin, nicht auf die Ressource zugreifen zu können, die in derselben Assembly gespeichert ist (die ich hätte gedacht, wäre standardmäßig erreichbar). Hier ist mein Code:
%Vor%GetManifestResourceStream gibt NULL und gemäß der Dokumentation zurück, weil die Ressource privat sein muss (weil, auch wenn sie nicht existiert, ein Nicht-NULL-Wert zurückgegeben wird). Also meine Frage ist das:
Wie mache ich meine Ressource für meine eigene Anwendung zugänglich? Ich habe es bereits zum Projekt hinzugefügt und es übrigens als "eingebettete Ressource" markiert.
Danke!
Sie können auch die Namen Ihrer Ressourcen überprüfen, indem Sie
aufrufen %Vor%Stellen Sie außerdem sicher, dass Ihre Datei "empty.mdb" bei der Kompilierungsaktion mit "Eingebettete Ressource" gekennzeichnet ist.
Alternativtext http://img520.imageshack.us/img520/6649/sinttuloo.png
Dies wird eine binäre eingebettete Ressourcendatei extrahieren ...
%Vor%Dies ist sehr nützlich für C # Unit-Tests, die Datendateien erfordern, in denen Ihre DLLs normalerweise ohne vorhandene Inhaltsdateien ausgeführt werden (sie können in temporären Ordnern ausgeführt werden, die vom Komponententestframework erstellt wurden).
Dies hat ein anderes Code-Snippet für Textdateien (keine Binärdateien), obwohl es Speicherlecks haben kann, da es die using
-Anweisung nicht verwenden konnte.