Quindi le impostazioni predefinite sono memorizzati nel file <exename>.config
si trova nella stessa directory del file eseguibile.
Il motivo per cui non è possibile trovare il file user.config è che viene creato solo se sono state apportate modifiche ai valori predefiniti. Le impostazioni utente sovrascrivono i valori predefiniti che sono memorizzati nel file <exename>.config
. Se non sono state apportate modifiche, non esiste alcun file di configurazione utente. E ... una volta che esiste, noterete che solo le impostazioni che sono state modificate verranno visualizzate nel file user.config.
Per verificare questo ... creare una variabile fittizia chiamata come temp nel file delle impostazioni. Quando si avvia l'applicazione fare:
Settings1.Default.temp = Settings1.Default.temp + 1;
Settings1.Default.Save();
Ora avrete un file chiamato user.config creato nella cartella ApplicationData dell'utente, che in Vista si trova a: C:\Users\<username>\AppData\Local\<company>\<productname>
Ecco il codice che ho scritto per aiutare a identificare dove tutti i vari SpecialFolders dove su diversi sistemi operativi.(Potrebbe desiderare di fare un ritrovamento-sostituzione per log.Debug
e sostituirlo con Console.WriteLine
)
log.Debug("SpecialFolder.ApplicationData: " + Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData));
log.Debug("SpecialFolder.CommonApplicationData: " + Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData));
log.Debug("SpecialFolder.ProgramFiles: " + Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles));
log.Debug("SpecialFolder.CommonProgramFiles: " + Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFiles));
log.Debug("SpecialFolder.DesktopDirectory: " + Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory));
log.Debug("SpecialFolder.LocalApplicationData: " + Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData));
log.Debug("SpecialFolder.MyDocuments: " + Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments));
log.Debug("SpecialFolder.System: " + Environment.GetFolderPath(Environment.SpecialFolder.System));
uscita In Windows Server 2003:
SpecialFolder.ApplicationData: "C:\Documents and Settings\blake\Application Data"
SpecialFolder.CommonApplicationData: "C:\Documents and Settings\All Users\Application Data"
SpecialFolder.ProgramFiles: "C:\Program Files"
SpecialFolder.CommonProgramFiles: "C:\Program Files\Common Files"
SpecialFolder.DesktopDirectory: "C:\Documents and Settings\blake\Desktop"
SpecialFolder.LocalApplicationData: "C:\Documents and Settings\blake\Local Settings\Application Data"
SpecialFolder.MyDocuments: "C:\Documents and Settings\blake\My Documents"
SpecialFolder.System: "C:\WINDOWS\system32"
uscita su Vista:
SpecialFolder.ApplicationData: "C:\Users\blake\AppData\Roaming"
SpecialFolder.CommonApplicationData: "C:\ProgramData"
SpecialFolder.ProgramFiles: "C:\Program Files"
SpecialFolder.CommonProgramFiles: "C:\Program Files\Common Files"
SpecialFolder.DesktopDirectory: "C:\Users\blake\Desktop"
SpecialFolder.LocalApplicationData: "C:\Users\blake\AppData\Local"
SpecialFolder.MyDocuments: "C:\Users\blake\Documents"
SpecialFolder.System: "C:\Windows\system32"
Il problema è che il file delle impostazioni non è lì. Non esiste una directory app sotto: «nome utente» \ Impostazioni locali \ Dati applicazioni \:/Sto usando Windows 7. – pkolodziej
Prova invece «username» \ AppData \ Local. Questa cartella potrebbe essere nascosta, ma dovrebbe comunque esistere. Puoi rimuovere gli elementi nascosti nella vista per explorer. – meklarian
Non c'è davvero! Conoscete qualche strumento che posso usare per monitorare da dove viene letto il file exe? – pkolodziej