Laden...

Umgang mit *.config Datei

Erstellt von Maddinel vor 19 Jahren Letzter Beitrag vor 19 Jahren 3.277 Views
Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren
Umgang mit *.config Datei

Hi ihr,
ich hbae mir an Hand einer Beispieldatei eine eigene *.config - Datei gebastelt und in das Anwendungsverzeichnis kopiert. Ich hab aber nix in irgend eine Projektdatei eingebunden oder so. Also als ich das ganze über den Borland C# Builder laufen lassen hab, da konnte ich die einstellungen aus der Datei auch prima lesen und verwenden, aber wenn ich das Projekt über das Visual StudioKompiliere, dann löscht er mir irgendwie die DAtei und kann sie so auch nicht lesen. Was mache ich falsch?

Achso und wenn ich die bereits vorher erstellte .exe Datei starte, dann funktioniert auch richtig.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

1.549 Beiträge seit 2004
vor 19 Jahren

Hallo
Könte es sein das du den Aufruf der datei in den Block gechriebenhast der Automatisch vom Formeditor erstelt wird?

Wir Arbeiten eigendlich nicht wir nehmen nur das geld

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren

Nein hab ich nicht, aber selbst wenn, warum sollte er die Datei dann löschen?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

X
2.051 Beiträge seit 2004
vor 19 Jahren

Du machst nix falsch. das ist wohl ein Bug in VS. Man kann sich Hilfe verschafen, in dem man eine Konfig Datei in z.B. dem Projektverzeichnis erstellt und nach dem Kompilieren sie in das bin Verzeichnis kopiert. Um das zu Automatisieren kannst du über Projekteigenschaften die Buildereignisse definieren. Für dein Problemm muss man in die "Befehlszeile für Postbuildereignis" folgende Zeile eintragen:

copy "$(ProjectDir)$(TargetFileName).config" "$(TargetDir)"

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren

Wie komme ich zu den Einstellungen des Postbuildereignises? Wo kann ich das einstellen?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren

Ich hab zwar gefunden wos hin muss, aber auch wenn ich die Pfade und den Dateinamen eingebe klappts nicht.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

X
2.051 Beiträge seit 2004
vor 19 Jahren

Habe ich das nicht bereits geschrieben?
Also: Menü Projekt/Eigenschaften/Algemeneine Eigenschaften/Buildereignisse/Befehlszeile für Postbuildereignis

X
2.051 Beiträge seit 2004
vor 19 Jahren

Und was heißt nicht klappt?? Ist Strom aus? Oder Monitor abgebrannt? 🙂

Wenn du in das Ausgabefenster von VS schaust, siehst du eventuel auch die Fehlermeldung.

Bei Pfaden muss man sie in " setzen wegen Leerzeichen.

Hier ein Bsp.:

Ich habe eine Konfig-Datei: P:\WindowsApplication2\WindowsApplication2\WindowsApplication2.exe.config

sie wird kKopiert nach P:\WindowsApplication2\WindowsApplication2\bin\Debug\
weil im Debug Modus.

http://www.genne-develop.com/temp/postbuild.JPG

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren

Ich hab mir schnell den Boröand C# Builder hier installiert, da gehts ohne Bug. Das ist mir zu umständlich anders. Außerdem will ich ja auch Einstellungen ändern im config File und da kann ich mir nicht immer die Datei löschen lassen und eine ältere Version neu hinkopieren.
Ja ich weiß mann könnte ja auch die Datei im Projektverzeichnis ändern, aber das ist ja dann mittlerweile nurnoch ne blöde rumflickerei über 10 Ecken.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

F
10.010 Beiträge seit 2004
vor 19 Jahren

Also das Verhalten von VS.NET ist kein Bug, sondern so gewollt.
Du erstellst in deinem Projekt-Verzeichnis eine Datei mit dem Namen:
"app.config"

Diese Datei wird bei jedem Start automatisch von VS.NET in das jeweilige
Bin verzeichnis copiert und umbenannt in "DeinExeName.exe.config".

Du solltest nur darauf achten, das Änderungen in dem Bin-Verzeichnis
nach dem nächsten start wieder weg sind, also alle Änderungen in app.config machen.

X
2.051 Beiträge seit 2004
vor 19 Jahren

das wuste ich nicht. werde heut mal testen, ob es wirklich so funktioniert.

Ist das irgendwo beschrieben??

F
10.010 Beiträge seit 2004
vor 19 Jahren

Keine Ahnung, aber ich mache das so seit der VS.Beta 1 ( die erste überhaupt ).

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren

Danke für die Antworten, das war schonmal sehr nützlich, aber wie kann ich denn jetzt Einstellungen speichern? Scheinbar benutzt man die app.config ja nicht dafür, aber was sonst? Eine normale Xml-Datei? Könntet ihr mir zeigen, wie das geht mit Einstellungen in Xml-Datei speichern?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

1.373 Beiträge seit 2004
vor 19 Jahren

Siehe z.B. Einstellungen in *.config ändern Ich benutz dar zwar nen BinaryFormatter, das ganze lässt sich aber relativ leicht für einen XmlSerializer (System.Xml.Serialization) umschreiben. Oder du benutzt direkt die Klassen aus dem System.Xml Namespace (XmlTextWriter/XmlTextReader oder XmlDocument)

MfG VizOne

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren

Danke, hast du mal ein einfaches Beispiel zum Speichern und lesen in/aus XML-Dateien?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

X
2.051 Beiträge seit 2004
vor 19 Jahren

versuch mal damit: TL.XML

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren

Danke ich werds mal ausprobieren damit.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

F
10.010 Beiträge seit 2004
vor 19 Jahren

Oder Du nimmst diese Komponente:
[url}http://aspx.fpzsoftware.de/default.aspx?Menu=DotNet[/url]