Ich möchte mir Einstellungen in meinem Programm merken. Ich benutze dafür die Settings-Funktionalität des Framworks.
Hier ein Beispiel:
Properties.Settings mySettings = null;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
mySettings.testsetting = textBox1.Text;
mySettings.Save();
}
private void button2_Click(object sender, EventArgs e)
{
MessageBox.Show(mySettings.testsetting);
}
private void Form1_Load(object sender, EventArgs e)
{
mySettings = new WindowsFormsApplication1.Properties.Settings();
}
das klappt auch.
wenn ich aber den pfad der exe verändere, indem ich sie in einen anderen ordner kopiere, sind alle einstellungen "vergessen".
wie kann ich das verhindern?
Kopierst du auch die .conf Datei mit?
Gruß David
die ist doch normalerweise in der Assembly(des Programms) mit drinn, dachte ich???
Nein, normal wenn das Programm "text.exe" heißt, gibt es auch eine Anwendungskonfigurationsdatei "text.exe.config" (Ich gehe davon aus das er im Application und nicht im Useteil speichert ).
Wenn man nun die exe rauskopiert und die Datei nicht mitnimmt, sind die Einstellungen natürlich weg und er legt eine neue Datei an.
ich kanns grade nicht testen, aber als ich die exe in einen anderen ordner kopiert und gestartet habe, habe ich testweise die testsettings neu gesetzt. es wurde keine config-datei im ordner der exe erstellt.
Hallo,
ja es wird ja für jede Anwendung die Settings neugeschrieben, d.h. du kopierst die Anwendung in ein anderem Verzeichnis, somit ist es eigentlich ja eine neue Anwendung, welche nur die gleiche Funktionalität hat.
Du kannst aber Standardwerte definieren, welche nicht vergessen werden sollten.
Was DavidT meint, ist das Application Configuration File, kannst du mit Add hinzufügen. (Bin mir aber nicht sicher, glaube da drin stehen dann nur die Standardwerte) Du musst es nicht mitkopieren, aber wie gesagt, neuer Pfad andere Einstellungen.
lg Lion
lg Lion
Achso, ich dachte du meinst die AppConfig. Sorry.
Von meinem einen Post abgesehen, mit einer Configfile wie oben beschrieben würdest du genau das erzielen was du möchtest.