Autor |
Beitrag |
Stefanie
Beiträge: 26
|
Verfasst: Mi 14.03.07 11:18
Hallo zusammen!
Ich befasse mich zum ersten mal mit config-files...
nun:
Ich möchte eine Konfigurationsdatei erstellen, die Benutzereinstellungen speichert.
Ich habe aber keine Ahnung, wie ich beginnen soll, oder was ich tun soll...habe weder in
der MSDN was nützliches gefunden noch hier im Forum.
Danke für die Hilfe! Moderiert von Christian S.: Topic aus C# - Die Sprache verschoben am Mi 14.03.2007 um 10:19
|
|
Martin1966
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Mi 14.03.07 13:50
Mich würde es wundern wenn es in C# keine Möglichkeiten gibt INI Dateien zu schreiben/zu lesen. Such doch mal danach.
Lg Martin
_________________ Ein Nutzer der Ecke
|
|
Stefanie
Beiträge: 26
|
Verfasst: Mi 14.03.07 13:52
doch, diese Möglichkeit gibt es. Ich möchte es aber mit app.config lösen...
ist das nicht möglich?
|
|
Martin1966
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Mi 14.03.07 13:53
Ich kenne mich mit C# nicht aus. Deshalb hatte ich INI Dateien als Suchbegriff vorgeschlagen.
_________________ Ein Nutzer der Ecke
|
|
Stefanie
Beiträge: 26
|
Verfasst: Mi 14.03.07 14:00
hihi, ach so...danke trotzdem für den gut gemeinten Tipp! =)
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: Mi 14.03.07 16:29
Hallo!
Das geht recht einfach. Im Solution Explorer kannst Du für Deine Anwendung unter "Properties" -> "Settings.settings" einen Editor für Einstellungen aufrufen. Ein Setting besteht aus einem Namen, einem Typen, einem Scope (also ob's jeweils für einen Nuzter oder für alle gilt) und einen Standardwert.
Beim Anlegen der Settings über diesen Editor, wird im Hintergrund eine Klasse erzeugt, welche Deine Einstellungen hält.
Wenn Du eine Einstellung mit Namen "someSetting" für eine Anwendung mit Namespace "CSharpTestApp" angelegt hast, kannst Du auf diese so zugreifen (was IMHO deutlich eleganter als INI-Dateien ist):
CSharpTestApp.Properties.Settings.Default.someSetting;
Du kannst CSharpTestApp.Properties noch in die using-Abteilung aufnehmen, dann greifst Du nur mit Settings.Default.someSetting drauf zu.
Geänderte Einstellungen werden ganz einfach über Settings.Default.Save() gespeichert und sollten (IIRC) beim Programmstart automatisch wieder geladen werden. Es wird automatisch ein Verzeichnis und eine Xml-Datei im Profilordner des Nutzers angelegt und die Daten dort geschrieben.
Grüße Christian
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
Stefanie
Beiträge: 26
|
Verfasst: Mi 14.03.07 17:07
wow, vielen Dank¨! hast mir sehr weiter geholfen! =)
|
|
DenniZ
Beiträge: 30
Win XP
C# (VS 2k5)
|
Verfasst: Sa 14.04.07 16:54
Hey,
ich bin auch momentan dran, eine .ini Datei auszulesen. Leider hänge ich auch daran :-/
Mit einer Hilfe kann ich leider auch nicht sehr viel Anfangen, könntest du evtl. einen Screenshot machen? oder "noch genauer" erklären *grins* oder eben eine Anleitung die auch ich blicke, hab gestern über eine Stunde bei Google verbracht *seufz*!
_________________ Am Ende des Geldes ist immer noch viel Monat übrig
|
|
Kha
Beiträge: 3803
Erhaltene Danke: 176
Arch Linux
Python, C, C++ (vim)
|
Verfasst: Sa 14.04.07 17:04
Hier wurde doch noch überhaupt keine Lösung für Ini-Dateien gepostet *BrillePutz* .
Um Ini-Dateien von älteren Programmen auszulesen, kannst du eine der Klassen auf CodeProject.com benutzen.
|
|
Chryzler
Beiträge: 1097
Erhaltene Danke: 2
|
Verfasst: Fr 12.10.07 21:20
Christian S. hat folgendes geschrieben: | Es wird automatisch ein Verzeichnis und eine Xml-Datei im Profilordner des Nutzers angelegt und die Daten dort geschrieben. |
Hmm, also die Einstellungen auslesen und wieder speichern geht schon, aber bei mir wird eine app.config direkt im Verzeichnis der EXE erstellt (Release-Ordner), nicht im Profilordner (Anwendungsdaten?). Unter Vista würde dann afaik immer UAC aufpoppen, weil er die Konfigdatei im Programmeverzeichnis verändern will. Wäre gut, wenn man den Speicherort ändern könnte.
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: Fr 12.10.07 21:28
Dann hast Du den Scope falsch gewählt. Du kannst definieren, ob eine Einstellung pro User oder pro Anwendung gelten soll. Die User-Einstellungen werden im Profilverzeichnis gespeichert.
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
Chryzler
Beiträge: 1097
Erhaltene Danke: 2
|
Verfasst: Fr 12.10.07 21:35
Die Scopes sind alle auf User gestellt.
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: Fr 12.10.07 21:44
Was vielleicht für Verwirrung sorgt: Selbstverständlich werden die Initialwerte der Settings in der app.config gespeichert (sonst wären die Settings leer, wenn keine Benutzer-Datei vorhanden wäre), aber bei einem Aufruf von Save-Methode werden die für den Nutzer gültigen Werte in eine Datei im Profil-Ordner gespeichert.
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
Chryzler
Beiträge: 1097
Erhaltene Danke: 2
|
Verfasst: Fr 12.10.07 22:09
Ach jetzt ist alles klar. Ich suchte immer nur unter C:\Dokumente und Einstellungen\User\Anwendungsdaten nach einen Ordner, hab jetzt aber herausgefunden, dass er unter C:\Dokumente und Einstellungen\User\Lokale Einstellungen\Anwendungsdaten gespeichert wird.
|
|