Che uso fanno se non possono essere comunque modificati dai valori predefiniti? Domanda retorica.Come faccio a evitare che le impostazioni dell'ambito dell'applicazione siano di sola lettura?
Innanzitutto, qual è il modo migliore per aggirare il sistema Impostazioni e scrivere direttamente nel file delle impostazioni dell'ambito dell'applicazione (problemi di sicurezza nel prossimo paragrafo)? XmlReader/XmlWriter?
IIRC, se un'applicazione tenta di scrivere nella sua cartella Programmi, Windows Vista e 7 fanno un po 'di magia per impedirlo. Suppongo che ho bisogno di chiamare UAC per elevare e devo mettere quell'icona scudo fantasia sul pulsante OK della finestra delle opzioni della mia applicazione e così via. Link a un rapido how-to?
In alternativa, potresti dirmi che quello che sto cercando di fare è stupido e dovrei archiviare le mie impostazioni di ambito applicativo modificabili da qualche altra parte.
Ma questo è esattamente quello che voglio! L'utente A modifica qualcosa e l'utente B non deve ripetere tale modifica. – CannibalSmith
È strano per me che più persone non abbiano bisogno di questa funzione. Sicuramente molte applicazioni hanno impostazioni globali che il programmatore vuole costruire per un'interfaccia utente amichevole. –
@Ben: è possibile utilizzare la classe [ConfigurationManager] (http://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager.aspx) se si desidera salvare le impostazioni direttamente sul globale. file exe.config.Ovviamente, se quel file si trova in c: \ programfiles \ l'utente avrà bisogno delle appropriate autorizzazioni di amministratore. Per prima cosa aprire la configurazione in questo modo: var config = ConfigurationManager.OpenExeConfiguration (ConfigurationUserLevel.None); quindi aggiungi la tua nuova impostazione in questo modo: config.AppSettings.Settings.Add ("chiave", "valore"); (Oppure puoi creare sezioni di configurazione personalizzate) Non dimenticare di chiamare Salva. –