Wie man den Pfad einer embebbed Ressource?
Habe ich eine embebbed Ressource in meinem C# - Projekt, ich weiß seinen Namen und wie finden Sie es, so Frage ich mich, ob es eine Möglichkeit gibt, den absoluten Pfad...ist es?
Seine absolute Pfad aus, was Informationen? Welche Art von "absoluter Pfad" sind Sie wirklich denken? Würde es helfen, wenn könnten Sie ein konkretes Beispiel nennen.
Ich möchte eine INI-Datei in mein Projekt und dann Lesen...
Wenn es ein embedded Ressource, obwohl es in der Versammlung. An diesem Punkt, was meinst du mit "den absoluten Pfad"? Es ist nicht eine Datei können Sie nur finden.
Was ist, wenn ich eine Datei in mein Projekt ohne die Einbettung? Gibt es eine Möglichkeit, um den absoluten Pfad?
Ich denke, Sie sind fehlt den Punkt: Sie brauchen nicht den Pfad der Datei zu verweisen, die eine eingebettete Ressource. Sie wollte sagen, dass Sie wissen, wie zu finden es...
Ich möchte eine INI-Datei in mein Projekt und dann Lesen...
Wenn es ein embedded Ressource, obwohl es in der Versammlung. An diesem Punkt, was meinst du mit "den absoluten Pfad"? Es ist nicht eine Datei können Sie nur finden.
Was ist, wenn ich eine Datei in mein Projekt ohne die Einbettung? Gibt es eine Möglichkeit, um den absoluten Pfad?
Ich denke, Sie sind fehlt den Punkt: Sie brauchen nicht den Pfad der Datei zu verweisen, die eine eingebettete Ressource. Sie wollte sagen, dass Sie wissen, wie zu finden es...
InformationsquelleAutor Dharma Dude | 2011-08-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie andere gesagt haben, eine eingebettete resource ist eingebettet in die kompilierte assembly und nicht auf dem Datei-system; wenn Sie schauen, um die Datei auf dem system, sollten Sie ändern Sie die build action auf "None" und die Eigenschaft in Ausgabeverzeichnis Kopieren auf einen der Werte kopieren.
Wenn Sie jedoch bedeuten, zum einbetten der Ressource kann zugegriffen werden, mithilfe von GetManifestResourceStream-Methode der Assembly-Klasse wie folgt:
(Der obige code wird davon ausgegangen, dass Sie Zugriff auf die Ressource aus einer Klasse in der gleichen assembly).
Die eingebettete Ressource der Regel folgt dem folgenden format (keine Leerzeichen bleiben erhalten) und das ist der string, den Sie übergeben werden würde, in der GetManifestResourceStream-Methode:
Standardprojekt-namespace.Ordner-name (wenn vorhanden).Dateiname
Persönlich finde ich der einfachste Weg, um diese Zeichenfolge zu nutzen, ein decompiler-Tools (z.B. Telerik ist Einfach Dekompilieren) ein Blick in die Montage und Holen Sie sich die volle Ressource-name für die Datei, die Sie suchen.
Getestet habe ich es, und aktualisiert Ihre Antwort.
InformationsquelleAutor lowds
Eingebettete Ressource ist genau das: eingebettet ist. Es bedeutet, dass es in der assembly enthalten und existiert nicht als physische Datei nach dem kompilieren (wenn es das ist was du suchst).
Eingebettete Ressourcen sind einfach zu bedienen, ohne die Notwendigkeit für Reflexion. Wenn Sie möchten, dass Ihre Daten eingebettet werden (d.h. nicht konfigurierbar nach build), die Sie verwenden. Andernfalls können Sie verwenden möchten
Content
build-Schritte, um die Datei nach dem build - in diesem Fall die gute alte I/O-API zugreifen können.InformationsquelleAutor Jacek Gorgoń
InformationsquelleAutor Damith
Wie etwa
wo myfile ist ein embedded-ini-Datei
InformationsquelleAutor baraban