2010-02-06 2 views
5

Ich habe einen C# .net Windows-Dienst erstellt, der eine Konfigurationsdatei enthält.C# Windows-Dienstkonfigurationsdatei

ich die Einstellungen der Konfigurationsdatei von meinem Code-Lese

string setting1 = Properties.Settings.Default.setting1; 

Verwendung Wenn ich den Wert von setting1 direkt in der .config-Datei des Windows-Dienst aus irgendeinem Grund ändern behält er den Wert, den ich hatte zur Entwurfszeit im Einstellungsdialog des Projekts festgelegt.

Ich verstehe nicht, was ich falsch ..

Dank

+0

können Sie angeben, wie Sie den Dienst starten und welche Dateien Sie ändern und in welchen Verzeichnissen? –

Antwort

0

Haben Sie den Dienst neu gestartet tue? Ich denke nicht, dass sie das dynamische Neuladen standardmäßig unterstützen.

this question might be helpfulor maybe this one

aber das Wesentliche scheint die Einstellungen neu geladen werden:

Properties.Settings.Default.Reload(); 

Sehen als einen Dienst Sie eine FileSystemWatcher hinzufügen möchten laden Sie die Datei zu sehen und nennen es, wenn ist geändert.

+0

Nun, ich habe alle Einstellungen in der Config-Datei vor dem Start des Dienstes - aber es scheint zu ignorieren, was ich reingelegt habe. –

1

Sie haben die Einstellungen als Benutzerbereich anstelle des Anwendungsbereichs.

Die Einstellungen für den Benutzerbereich befinden sich im Benutzerordner AppData. Sie können es im Ordner AppData des Benutzers löschen, unter dessen Anmeldeinformationen der Windows-Dienst ausgeführt wird.

+0

Nein der Bereich im Einstellungsdialog ist auf Anwendung für alle Einstellungen festgelegt –